export declare type BooleanOrFunc = boolean | (() => boolean);
export declare type StandardDataTypes = 'string' | 'number' | 'bigint' | 'boolean' | 'symbol' | 'undefined' | 'object' | 'function' | 'date' | 'array' | Date | [];
declare class To {
    string(value: unknown): string;
    string(value: unknown, allowEmpty: boolean): string;
    string(value: number, format: string): string;
    string(value: Date, format: string): string;
    string(value: unknown, defaultValue: string): string;
    string(value: unknown, defaultValue: string, allowEmpty: boolean): string;
    boolean(value: BooleanOrFunc): boolean;
    boolean(value: BooleanOrFunc, defaultValue: boolean): boolean;
    date(value: unknown): Date;
    date(value: unknown, defaultValue: Date): Date;
    number(value: unknown, defaultValue?: number): number;
    function<T extends Function>(value: T): T;
    function<T extends Function>(value: T, defaultValue: T): T;
    function(value: unknown): Function;
    function<T extends Function>(value: unknown, defaultValue: T): T;
    object<T extends Object>(value: T): T;
    object<T extends Object>(value: T, defaultValue: T): T;
    object(value: unknown): Object;
    object<T extends Object>(value: unknown, defaultValue: T): T;
    array<T>(value: T[]): T[];
    type(value: unknown): StandardDataTypes;
    type<T>(typeName: StandardDataTypes, value: unknown): T;
    type<T>(typeName: StandardDataTypes, value: unknown, defaultValue: T): T;
    type(typeName: StandardDataTypes, value: unknown): unknown;
    type(typeName: StandardDataTypes, value: unknown, defaultValue: unknown): unknown;
}
export declare const to: To;
export {};
