valia
Version:
A runtime data validator in TypeScript with advanced type inference, built-in validation functions, and seamless integration for server and client environments.
69 lines (64 loc) • 1.17 kB
text/typescript
export type PlainObject = Record<string | symbol, unknown>;
export type PlainFunction = (...args: unknown[]) => unknown;
export type AsyncFunction = (...args: unknown[]) => Promise<unknown>;
export type PrimitiveTypes =
| "undefined"
| "null"
| "number"
| "string"
| "boolean"
| "symbol"
| "bigint";
export type StandardTags =
| "Undefined"
| "Boolean"
| "String"
| "Function"
| "Promise"
| "Array"
| "ArrayBuffer"
| "SharedArrayBuffer"
| "Int8Array"
| "Int16Array"
| "Int32Array"
| "Uint8Array"
| "Uint8ClampedArray"
| "Uint16Array"
| "Uint32Array"
| "Float32Array"
| "Float64Array"
| "BigInt64Array"
| "BigUint64Array"
| "DataView"
| "Map"
| "Set"
| "WeakMap"
| "WeakSet"
| "WeakRef"
| "Proxy"
| "RegExp"
| "Error"
| "Date"
| "FinalizationRegistry"
| "BigInt"
| "Symbol"
| "Iterator"
| "AsyncFunction"
| "GeneratorFunction"
| "AsyncGeneratorFunction"
| "Atomics"
| "JSON"
| "Math"
| "Reflect"
| "Null"
| "Number"
| "Generator"
| "AsyncGenerator"
| "Object"
| "Intl.Collator"
| "Intl.DateTimeFormat"
| "Intl.ListFormat"
| "Intl.NumberFormat"
| "Intl.PluralRules"
| "Intl.RelativeTimeFormat"
| "Intl.Locale";