import { Schema } from '../core/schema'; import { ValidationContext } from '../rules/BaseRule'; import { DateFormat } from '../types/DateFormat'; import { NullableType } from '../types/types'; declare function isDate(input: any): boolean; export type MinDateMethod
= (parent: any, config: ValidationContext) => Date | undefined; export declare class DateSchema = Date | string, Final = any> extends Schema { protected message: string; protected rule: typeof isDate; /** * Checks if is today * @param message @option Overrides default message */ today(message?: string): import('..').ObjectPropertiesSchema; private getComparisonFunction; /** * Checks if is date is bigger than minDate * @param minDate * @param format @option @default 'date' compares date using format (ex: format = 'date' it will only compare year, month and date * @param message @option Overrides default message * * Note: If format = 'time' it will only compare hour, minutes, seconds and milliseconds, while format = 'dateTime' it will compare everything */ minDate(minDate: Date | MinDateMethod | string, format?: DateFormat, message?: string): import('..').ObjectPropertiesSchema; /** * Checks if is date is smaller than maxDate * @param maxDate * @param format @option @default 'date' compares date using format (ex: format = 'date' it will only compare year, month and date * @param message @option Overrides default message * * Note: If format = 'time' it will only compare hour, minutes, seconds and milliseconds, while format = 'dateTime' it will compare everything */ maxDate(maxDate: Date | MinDateMethod | string, format?: DateFormat, message?: string): import('..').ObjectPropertiesSchema; /** * Checks if is date is equal than maxDate * @param date * @param format @option @default 'date' compares date using format (ex: format = 'date' it will only compare year, month and date * @param message @option Overrides default message * * Note: If format = 'time' it will only compare hour, minutes, seconds and milliseconds, while format = 'dateTime' it will compare everything */ equals(date: Date | string | MinDateMethod, format?: DateFormat, message?: string): import('..').ObjectPropertiesSchema; } export declare const date: (message?: string) => DateSchema; export {};