normul
Version:
Normul is a tiny TypeScript/JavaScript library for data normalization and transformation
35 lines • 1.34 kB
JavaScript
import { AnySchema, ArraySchema, BooleanSchema, DiscriminatedUnionSchema, LiteralSchema, NullSchema, NumberSchema, ObjectSchema, RecordSchema, Schema, StringSchema, TupleSchema, TypeSchema, UndefinedSchema, UnionSchema, UnknownSchema, } from './schemas/index.js';
export const any = new AnySchema();
export function array(...schemas) {
return new ArraySchema(schemas);
}
export const boolean = new BooleanSchema();
export function discriminatedUnion(discriminator, ...schemas) {
return new DiscriminatedUnionSchema(discriminator, schemas);
}
export function literal(value) {
return new LiteralSchema(value);
}
export const nullValue = new NullSchema();
export const number = new NumberSchema();
export function object(shape) {
return new ObjectSchema(shape);
}
export function record(keyOrValue, valueMaybe) {
return valueMaybe ?
new RecordSchema(keyOrValue, valueMaybe) :
new RecordSchema(new StringSchema(), keyOrValue);
}
export const string = new StringSchema();
export function tuple(...schemas) {
return new TupleSchema(schemas);
}
export function type() {
return new TypeSchema();
}
export const undefinedValue = new UndefinedSchema();
export function union(...schemas) {
return new UnionSchema(schemas);
}
export const unknown = new UnknownSchema();
//# sourceMappingURL=factories.js.map