"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.FuzzIntensity = void 0; const ValueObject_1 = require("../../../../shared/domain/ValueObject"); class FuzzIntensity extends ValueObject_1.ValueObject { static low() { return new FuzzIntensity({ value: 'low' }); } static medium() { return new FuzzIntensity({ value: 'medium' }); } static high() { return new FuzzIntensity({ value: 'high' }); } static fromString(s) { if (!FuzzIntensity.LEVELS.includes(s)) { throw new Error(`Invalid intensity: ${s}. Must be one of: ${FuzzIntensity.LEVELS.join(', ')}`); } return new FuzzIntensity({ value: s }); } get value() { return this.props.value; } } exports.FuzzIntensity = FuzzIntensity; FuzzIntensity.LEVELS = ['low', 'medium', 'high'];