import { ValidationError$1 as ValidationError } from "./base.errors-DyC_RLkA.js"; import { DateTime$1 as DateTime } from "./refined.types-Y15bJPl9.js"; import { Result } from "@carbonteq/fp"; import { ZodObject } from "zod"; //#region src/domain/base.vo.d.ts declare abstract class BaseValueObject { abstract serialize(): T; /** Util method to use associated parser in boundary validators */ getParser?(): any; } interface IDateRange { startDate: DateTime; endDate: DateTime; } type TDateTime = typeof DateTime; type DateRangeParser = ZodObject<{ startDate: TDateTime; endDate: TDateTime; }>; declare class InvalidDateRange extends ValidationError {} declare class DateRange extends BaseValueObject { readonly start: DateTime; readonly end: DateTime; private constructor(); private ensureValidRange; static create(data: unknown): Result; static from(other: IDateRange): DateRange; intervalMs(): number; serialize(): IDateRange; getParser(): DateRangeParser; } //#endregion export { BaseValueObject as BaseValueObject$1, DateRange as DateRange$1, IDateRange, InvalidDateRange as InvalidDateRange$1 }; //# sourceMappingURL=base.vo-BLUdLqfB.d.ts.map