import { AbstractValidator } from '../types'; /** Constraints to validate a `Date` with. */ export interface DateConstraints { /** * The format for dates, an _ISO date_ (RFC 3339) or a numeric timestamp * * When the format is set to `unix-timestamp`, the validator will accept * numeric timestamps in seconds from the Epoch instead of milliseconds. */ format?: 'iso' | 'timestamp' | 'unix-timestamp'; /** The earliest value a date can have */ from?: Date; /** The latest value a date can have */ until?: Date; } /** A `Validator` validating dates and converting them to `Date` instances. */ export declare class DateValidator extends AbstractValidator { readonly format?: 'iso' | 'timestamp' | 'unix-timestamp'; readonly from?: Date; readonly until?: Date; constructor(constraints?: DateConstraints); validate(value: unknown): Date; } export declare function dateValidatorFactory(constraints: DateConstraints): DateValidator; /** Validate dates and convert them to `Date` instances. */ export declare const date: typeof dateValidatorFactory & DateValidator;