UNPKG

dilswer

Version:

Blazingly fast data validation library with TypeScript integration.

84 lines (83 loc) 7.85 kB
import { Type } from "./data-types/Type"; import type { AnyType } from "./data-types/type-types"; import { And, Exclude, Omit, Partial, Pick, Required } from "./intrinsic-type-utils/index"; import { toJsonSchema } from "./json-schema-parser/to-json-schema"; import { toTsType } from "./ts-type-generator/to-ts-type"; import { parseWith } from "./universal-parser/universal-parser"; import { compileFastValidator } from "./validation-algorithms/compile-fast-validator"; import { validator } from "./validation-algorithms/create-validator"; import { assertType } from "./validation-algorithms/ensure-data-type"; import { ValidationError } from "./validation-algorithms/validation-error/validation-error"; export type { AnyType, BasicType, BasicTypeNames, ComplexType, FieldDescriptor, Metadata as TypeMetadata, RecordTypeSchema, TypeVisitor, } from "./data-types/type-types"; export type { Infer } from "./data-types/type-utils"; export type { ArrayType } from "./data-types/types/array"; export type { BooleanType } from "./data-types/types/boolean"; export type { CustomType } from "./data-types/types/custom"; export type { DictType } from "./data-types/types/dict"; export type { EnumType } from "./data-types/types/enum"; export type { EnumMemberType } from "./data-types/types/enum-member"; export type { FunctionType } from "./data-types/types/function"; export type { InstanceOfType } from "./data-types/types/instance"; export type { IntegerType } from "./data-types/types/integer"; export type { IntersectionType } from "./data-types/types/intersection"; export type { LiteralType } from "./data-types/types/literal"; export type { NullType } from "./data-types/types/null"; export type { NumberType } from "./data-types/types/number"; export type { RecordType } from "./data-types/types/record"; export type { RecursiveType, RecursiveTypeReference, } from "./data-types/types/recursive"; export type { SetType } from "./data-types/types/set"; export type { StringType } from "./data-types/types/string"; export type { StringFloatType as StringNumeralType } from "./data-types/types/string-float"; export type { StringIntegerType } from "./data-types/types/string-integer"; export type { StringMatchingType } from "./data-types/types/string-matching"; export type { SymbolType } from "./data-types/types/symbol"; export type { TupleType } from "./data-types/types/tuple"; export type { UndefinedType } from "./data-types/types/undefined"; export type { UnionType } from "./data-types/types/union"; export type { UnknownType } from "./data-types/types/unknown"; export * from "./intrinsic-type-utils/index"; export type { ParseToJsonSchemaOptions } from "./json-schema-parser/to-json-schema"; export type { TsParsingMode, TsParsingOptions, } from "./ts-type-generator/parser-options"; export type { FastValidator } from "./validation-algorithms/compile-fast-validator"; export { And, assertType, compileFastValidator, Exclude, Omit, parseWith, Partial, Pick, Required, toJsonSchema, toTsType, Type, ValidationError, validator, }; declare const _default: { And: <R1 extends import("./data-types/type-types").RecordTypeSchema, R2 extends import("./data-types/type-types").RecordTypeSchema>(recordDataTypeA: import("./data-types/types/record").RecordType<R1>, recordDataTypeB: import("./data-types/types/record").RecordType<R2>) => import("./intrinsic-type-utils/types").SumRecord<R1, R2>; assertType: <DT extends AnyType>(type: DT, data: unknown) => asserts data is import("./data-types/type-utils").ReWrap<import("./data-types/type-utils").ParseDataType<DT>>; validator: typeof validator; compileFastValidator: <DT_1 extends AnyType>(dataType: DT_1) => import("./validation-algorithms/compile-fast-validator").FastValidator<DT_1>; ValidationError: typeof ValidationError; Type: { readonly Unknown: import("./data-types/types/unknown").UnknownType; readonly String: import("./data-types/types/string").StringType; readonly Number: import("./data-types/types/number").NumberType; readonly Int: import("./data-types/types/integer").IntegerType; readonly Boolean: import("./data-types/types/boolean").BooleanType; readonly Symbol: import("./data-types/types/symbol").SymbolType; readonly Function: import("./data-types/types/function").FunctionType; readonly Null: import("./data-types/types/null").NullType; readonly Undefined: import("./data-types/types/undefined").UndefinedType; Record<TS extends import("./data-types/type-types").RecordTypeSchema>(args: TS): import("./data-types/types/record").RecordType<TS>; Dict<DT_2 extends AnyType[]>(...args: DT_2): import("./data-types/types/dict").DictType<DT_2>; Array<DT_3 extends AnyType[]>(...args: DT_3): import("./data-types/types/array").ArrayType<DT_3>; Tuple<DT_4 extends AnyType[]>(...args: DT_4): import("./data-types/types/tuple").TupleType<DT_4>; Set<DT_5 extends AnyType[]>(...args: DT_5): import("./data-types/types/set").SetType<DT_5>; OneOf<DT_6 extends AnyType[]>(...args: DT_6): import("./data-types/types/union").UnionType<DT_6>; AllOf<DT_7 extends AnyType[]>(...args: DT_7): import("./data-types/types/intersection").IntersectionType<DT_7>; Literal<V extends string | number | boolean>(value: V): import("./data-types/types/literal").LiteralType<V>; EnumMember<M extends string | number>(enumMember: M): import("./data-types/types/enum-member").EnumMemberType<M>; Enum<T extends string, TEnumValue extends string | number>(enumInstance: { [key in T]: TEnumValue; }): import("./data-types/types/enum").EnumType<TEnumValue>; InstanceOf<DT_8>(instanceOf: new (...args: any[]) => DT_8): import("./data-types/types/instance").InstanceOfType<DT_8>; Custom<VF extends (v: any) => v is any>(validateFunction: VF): import("./data-types/types/custom").CustomType<VF>; Recursive<DT_9 extends AnyType>(getDataType: (ref: import("./data-types/types/recursive").RecursiveTypeReference) => DT_9): import("./data-types/types/recursive").RecursiveType<DT_9>; Option<DT_10 extends AnyType>(type: DT_10): import("./data-types/type-types").OptionalField<DT_10>; }; Exclude: <U extends import("./data-types/types/union").UnionType<any[]>, E extends import("./data-types/type-types").BasicType>(union: U, ...excludeTypes: E[]) => import("./intrinsic-type-utils/types").ExcludeOneOf<U, E>; Omit: <R extends import("./data-types/type-types").RecordTypeSchema, K extends keyof R>(recordDataType: import("./data-types/types/record").RecordType<R>, ...omitKeys: readonly K[]) => import("./intrinsic-type-utils/types").OmitRecord<R, K>; Partial: <R_1 extends import("./data-types/type-types").RecordTypeSchema>(recordDataType: import("./data-types/types/record").RecordType<R_1>) => import("./intrinsic-type-utils/types").PartialRecord<R_1>; Pick: <R_2 extends import("./data-types/type-types").RecordTypeSchema, K_1 extends keyof R_2>(recordDataType: import("./data-types/types/record").RecordType<R_2>, ...pickKeys: readonly K_1[]) => import("./intrinsic-type-utils/types").PickRecord<R_2, K_1>; Required: <R_3 extends import("./data-types/type-types").RecordTypeSchema>(recordDataType: import("./data-types/types/record").RecordType<R_3>) => import("./intrinsic-type-utils/types").RequiredRecord<R_3>; toJsonSchema: (type: AnyType, options?: import("./json-schema-parser/to-json-schema").ParseToJsonSchemaOptions, include$schemaProperty?: boolean) => import("json-schema").JSONSchema6 | undefined; toTsType: (dataType: AnyType, options?: Partial<import("./ts-type-generator/parser-options").TsParsingOptions> | undefined) => string; parseWith: <R_4>(visitor: import("./data-types/type-types").TypeVisitor<R_4>, type: AnyType) => R_4; }; export default _default;