interface ParserOptions { defaultValue?: T; validate?: (value: T) => boolean; } interface Parser { parse: (value: string) => T | undefined; serialize: (value: T) => string; validate?: (value: T) => boolean; } declare function parseAsTimestamp(options?: ParserOptions): { parse: (value: string) => number | undefined; serialize: (value: number) => string; validate: ((value: number) => boolean) | undefined; }; declare function parseAsIsoDateTime(options?: ParserOptions): { parse: (value: string) => Date | undefined; serialize: (value: Date) => string; validate: ((value: Date) => boolean) | undefined; }; declare function parseAsStringEnum(enumValues: readonly T[], options?: ParserOptions): { parse: (value: string) => T | undefined; serialize: (value: T) => T; validate: (value: T) => boolean; }; declare function parseAsNumber(options?: ParserOptions & { min?: number; max?: number; }): { parse: (value: string) => number | undefined; serialize: (value: number) => string; validate: ((value: number) => boolean) | undefined; }; declare function parseAsBoolean(options?: ParserOptions): { parse: (value: string) => boolean | undefined; serialize: (value: boolean) => string; validate: ((value: boolean) => boolean) | undefined; }; export { type Parser, type ParserOptions, parseAsBoolean, parseAsIsoDateTime, parseAsNumber, parseAsStringEnum, parseAsTimestamp };