import { Struct, Refiner } from '../struct.js'; /** * Ensure that a string, array, map, or set is empty. */ export declare function empty | Set, S extends any>(struct: Struct): Struct; /** * Ensure that a number or date is below a threshold. */ export declare function max(struct: Struct, threshold: T, options?: { exclusive?: boolean; }): Struct; /** * Ensure that a number or date is above a threshold. */ export declare function min(struct: Struct, threshold: T, options?: { exclusive?: boolean; }): Struct; /** * Ensure that a string, array, map or set is not empty. */ export declare function nonempty | Set, S extends any>(struct: Struct): Struct; /** * Ensure that a string matches a regular expression. */ export declare function pattern(struct: Struct, regexp: RegExp): Struct; /** * Ensure that a string, array, number, date, map, or set has a size (or length, or time) between `min` and `max`. */ export declare function size | Set, S extends any>(struct: Struct, min: number, max?: number): Struct; /** * Augment a `Struct` to add an additional refinement to the validation. * * The refiner function is guaranteed to receive a value of the struct's type, * because the struct's existing validation will already have passed. This * allows you to layer additional validation on top of existing structs. */ export declare function refine(struct: Struct, name: string, refiner: Refiner): Struct; //# sourceMappingURL=refinements.d.ts.map