import { StandardSchemaV1 } from "../standard-schema/types.mjs"; import { Schema } from "../types/schema-types.mjs"; import { SchemaContext } from "../types/context-types.mjs"; import { ValidationResult } from "../types/result-types.mjs"; import { Infer } from "../types/inference-types.mjs"; import { BaseValidator } from "../validators/base-validator.mjs"; import { AnyValidator } from "../validators/any-validator.mjs"; import { ArrayValidator } from "../validators/array-validator.mjs"; import { BooleanValidator } from "../validators/boolean-validator.mjs"; import { ComputedValidator } from "../validators/computed-validator.mjs"; import { DateValidator } from "../validators/date-validator.mjs"; import { ObjectValidator } from "../validators/object-validator.mjs"; import { DiscriminatedUnionValidator } from "../validators/discriminated-union-validator.mjs"; import { NumberValidator } from "../validators/number-validator.mjs"; import { FloatValidator } from "../validators/float-validator.mjs"; import { InstanceOfValidator } from "../validators/instanceof-validator.mjs"; import { IntValidator } from "../validators/int-validator.mjs"; import { LazyValidator } from "../validators/lazy-validator.mjs"; import { LiteralValidator } from "../validators/literal-validator.mjs"; import { ManagedValidator } from "../validators/managed-validator.mjs"; import { NumericValidator } from "../validators/numeric-validator.mjs"; import { RecordValidator } from "../validators/record-validator.mjs"; import { ScalarValidator } from "../validators/scalar-validator.mjs"; import { StringValidator } from "../validators/string-validator.mjs"; import { TupleValidator } from "../validators/tuple-validator.mjs"; import { UnionValidator } from "../validators/union-validator.mjs"; import { SealConfig } from "../config.mjs"; //#region ../@warlock.js/seal/src/factory/validators.d.ts /** * Seal factory object - creates instances of validators * * Use 'v' to create validation schemas (seals) for your data */ declare const v: ValidatorV; type ValidateOptions = { context?: Record; } & SealConfig; interface ValidatorV { object: (schema: T, errorMessage?: string) => ObjectValidator & StandardSchemaV1>>; any: () => AnyValidator & StandardSchemaV1; array: (validator: T, errorMessage?: string) => ArrayValidator & { validator: T; } & StandardSchemaV1>>; record: (validator?: T, errorMessage?: string) => RecordValidator & { valueValidator: T; } & StandardSchemaV1>>; tuple: (validators: T, errorMessage?: string) => TupleValidator & { validators: T; } & StandardSchemaV1<{ [K in keyof T]: Infer }>; date: (errorMessage?: string) => DateValidator & StandardSchemaV1; literal: (...values: T) => LiteralValidator & StandardSchemaV1; instanceof: (ctor: new (...args: any[]) => T, errorMessage?: string) => InstanceOfValidator & StandardSchemaV1; lazy: (thunk: () => T) => LazyValidator & StandardSchemaV1>; string: (errorMessage?: string) => StringValidator & StandardSchemaV1; email: (errorMessage?: string) => StringValidator & StandardSchemaV1; enum: { (values: T, errorMessage?: string): ScalarValidator & StandardSchemaV1; >(values: T, errorMessage?: string): ScalarValidator & StandardSchemaV1; }; number: (errorMessage?: string) => NumberValidator & StandardSchemaV1; numeric: (errorMessage?: string) => NumericValidator & StandardSchemaV1; int: (errorMessage?: string) => IntValidator & StandardSchemaV1; float: (errorMessage?: string) => FloatValidator & StandardSchemaV1; boolean: (errorMessage?: string) => BooleanValidator & StandardSchemaV1; scalar: (errorMessage?: string) => ScalarValidator & StandardSchemaV1; union: (validators: T, errorMessage?: string) => UnionValidator & StandardSchemaV1>; discriminatedUnion: >>(discriminator: K, validators: Branches) => DiscriminatedUnionValidator & StandardSchemaV1>; computed: (callback: (data: any, context: SchemaContext) => TResult | Promise, resultValidator?: BaseValidator) => ComputedValidator & StandardSchemaV1; managed: (callback?: (context: SchemaContext) => TResult | Promise, resultValidator?: BaseValidator) => ManagedValidator & StandardSchemaV1; validate: (schema: T, data: any, options?: ValidateOptions) => Promise; } //#endregion export { ValidateOptions, ValidatorV, v }; //# sourceMappingURL=validators.d.mts.map