import { Validator as BaseValidator } from "class-validator";
interface IsFloatOptions {
    min?: number;
    max?: number;
    gt?: number;
    lt?: number;
}
interface IsIntOptions {
    min?: number;
    max?: number;
    allow_leading_zeroes?: boolean;
    lt?: number;
    gt?: number;
}
export declare class ExtendedValidator extends BaseValidator {
    /**
     * 检查一个object是否具有某个属性
     * @param obj
     * @param path
     * @example
     * hasProperty({a:"l"},"a")
     */
    hasProperty(obj: any, path: string): boolean;
    /**
     * 检查一个object的某个属性是否为空
     * @param obj
     * @param path
     * @example
     * objPropertyIsNotEmpty({ a : { b: "c" }, "a.b" })
     */
    objPropertyIsNotEmpty(obj: any, path: string): boolean;
    /**
     * 检查一个object的多个属性是否为空
     * @param obj
     * @param paths
     * @example
     * objPropertiesIsNotEmpty({a: {b:"c", d: "e"}}, ["a.b","a.d"])
     */
    objPropertiesIsNotEmpty(obj: any, paths: string[]): boolean;
    toInt(input: string, radix?: number): number;
    toFloat(input: string): number;
    toBoolean(input: string): boolean;
    toDate(input: string): Date;
    isFloat(str: string, options?: IsFloatOptions): boolean;
    isFloat2(input: number, options?: IsFloatOptions): boolean;
    isInt2(str: string, options?: IsIntOptions): boolean;
    isInt3(input: number, options?: IsIntOptions): boolean;
}
export declare const extendedValidator: ExtendedValidator;
export {};
