type AnyConstructor = new (...arguments_: any[]) => object; /** * Class decorator that validates every decorated field when an instance is * constructed. Throws an Error joining all failure messages when validation * fails, so an invalid instance can never escape its constructor. * * Validation runs after the wrapped constructor finishes, so it observes the * fully initialized instance regardless of the `useDefineForClassFields` * setting. * * @template T - The decorated constructor type. * @param base - The class being decorated. * @returns A subclass that validates on construction. * * @example * ```typescript * @Validatable * class Product { * @IsNumber price = 0; * } * new Product(); // throws when price is not a number * ``` */ export declare const Validatable: (base: T) => T; export {};