valia
Version:
A runtime data validator in TypeScript with advanced type inference, built-in validation functions, and seamless integration for server and client environments.
8 lines (5 loc) • 317 B
text/typescript
import type { SetableCriteria, GuardedCriteria } from "./formats";
import { Schema } from "./schema";
export type SchemaInstance = InstanceType<typeof Schema>;
export type SchemaInfer<I> = I extends Schema<infer T> ? GuardedCriteria<T> : never;
export type SchemaType<T extends SetableCriteria> = typeof Schema<T>;