Socket
Socket
Sign inDemoInstall

superstruct

Package Overview
Dependencies
Maintainers
1
Versions
90
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

superstruct - npm Package Compare versions

Comparing version 0.14.1 to 0.14.2

102

lib/index.cjs.d.ts

@@ -33,2 +33,20 @@ /**

/**
* Assign properties from one type to another, overwriting existing.
*/
type Assign<T, U> = Simplify<U & Omit<T, keyof U>>;
/**
* A schema for enum structs.
*/
type EnumSchema<T extends string | number> = {
[K in T]: K;
};
/**
* Check if a type is an exact match.
*/
type IsMatch<T, G> = T extends G ? (G extends T ? T : never) : never;
/**
* Check if a type is a record type.
*/
type IsRecord<T> = T extends object ? string extends keyof T ? T : never : never;
/**
* Check if a type is a tuple.

@@ -58,13 +76,15 @@ */

/**
* Check if a type is a record type.
* Check if a type is a union.
*/
type IsRecord<T> = T extends object ? string extends keyof T ? T : never : never;
type IsUnion<T, U extends T = T> = (T extends any ? (U extends T ? false : true) : false) extends false ? never : T;
/**
* Check if a type is a generic string type.
* A schema for object structs.
*/
type IsGenericString<T> = T extends string ? string extends T ? T : never : never;
type ObjectSchema = Record<string, Struct<any, any>>;
/**
* Normalize properties of a type that allow `undefined` to make them optional.
* Infer a type from an object struct schema.
*/
type Optionalize<S extends object> = OmitBy<S, undefined> & Partial<PickBy<S, undefined>>;
type ObjectType<S extends ObjectSchema> = Simplify<Optionalize<{
[K in keyof S]: Infer<S[K]>;
}>>;
/**

@@ -77,2 +97,12 @@ * Omit properties from a type that extend from a specific type.

/**
* Normalize properties of a type that allow `undefined` to make them optional.
*/
type Optionalize<S extends object> = OmitBy<S, undefined> & Partial<PickBy<S, undefined>>;
/**
* Transform an object schema type to represent a partial.
*/
type PartialObjectSchema<S extends ObjectSchema> = {
[K in keyof S]: Struct<Infer<S[K]> | undefined>;
};
/**
* Pick properties from a type that extend from a specific type.

@@ -90,22 +120,2 @@ */

/**
* Assign properties from one type to another, overwriting existing.
*/
type Assign<T, U> = Simplify<U & Omit<T, keyof U>>;
/**
* A schema for object structs.
*/
type ObjectSchema = Record<string, Struct<any, any>>;
/**
* Infer a type from an object struct schema.
*/
type ObjectType<S extends ObjectSchema> = Simplify<Optionalize<{
[K in keyof S]: Infer<S[K]>;
}>>;
/**
* Transform an object schema type to represent a partial.
*/
type PartialObjectSchema<S extends ObjectSchema> = {
[K in keyof S]: Struct<Infer<S[K]> | undefined>;
};
/**
* A schema for any type of struct.

@@ -120,13 +130,31 @@ */

] extends [
IsGenericString<T>
] ? null : EnumSchema<T> : T extends number | boolean | bigint | symbol | undefined | null | Function | Date | Error | RegExp ? null : T extends Map<any, any> ? null : T extends WeakMap<any, any> ? null : T extends Set<any> ? null : T extends WeakSet<any> ? null : T extends Array<infer E> ? T extends IsTuple<T> ? null : Struct<E> : T extends Promise<any> ? null : T extends object ? T extends IsRecord<T> ? null : {
IsMatch<T, string>
] ? null : [
T
] extends [
IsUnion<T>
] ? EnumSchema<T> : T : [
T
] extends [
number
] ? [
T
] extends [
IsMatch<T, number>
] ? null : [
T
] extends [
IsUnion<T>
] ? EnumSchema<T> : T : [
T
] extends [
boolean
] ? [
T
] extends [
IsMatch<T, boolean>
] ? null : T : T extends bigint | symbol | undefined | null | Function | Date | Error | RegExp | Map<any, any> | WeakMap<any, any> | Set<any> | WeakSet<any> | Promise<any> ? null : T extends Array<infer E> ? T extends IsTuple<T> ? null : Struct<E> : T extends object ? T extends IsRecord<T> ? null : {
[K in keyof T]: Describe<T[K]>;
} : null;
/**
* A schema for enum structs.
*/
type EnumSchema<T extends string> = {
[K in T]: K;
};
/**
* A schema for tuple structs.

@@ -562,5 +590,5 @@ */

*/
declare function literal<T extends boolean>(constant: T): Struct<T, null>;
declare function literal<T extends number>(constant: T): Struct<T, null>;
declare function literal<T extends string>(constant: T): Struct<T, null>;
declare function literal<T extends boolean>(constant: T): Struct<T, T>;
declare function literal<T extends number>(constant: T): Struct<T, T>;
declare function literal<T extends string>(constant: T): Struct<T, T>;
declare function literal<T>(constant: T): Struct<T, null>;

@@ -567,0 +595,0 @@ /**

@@ -33,2 +33,20 @@ /**

/**
* Assign properties from one type to another, overwriting existing.
*/
type Assign<T, U> = Simplify<U & Omit<T, keyof U>>;
/**
* A schema for enum structs.
*/
type EnumSchema<T extends string | number> = {
[K in T]: K;
};
/**
* Check if a type is an exact match.
*/
type IsMatch<T, G> = T extends G ? (G extends T ? T : never) : never;
/**
* Check if a type is a record type.
*/
type IsRecord<T> = T extends object ? string extends keyof T ? T : never : never;
/**
* Check if a type is a tuple.

@@ -58,13 +76,15 @@ */

/**
* Check if a type is a record type.
* Check if a type is a union.
*/
type IsRecord<T> = T extends object ? string extends keyof T ? T : never : never;
type IsUnion<T, U extends T = T> = (T extends any ? (U extends T ? false : true) : false) extends false ? never : T;
/**
* Check if a type is a generic string type.
* A schema for object structs.
*/
type IsGenericString<T> = T extends string ? string extends T ? T : never : never;
type ObjectSchema = Record<string, Struct<any, any>>;
/**
* Normalize properties of a type that allow `undefined` to make them optional.
* Infer a type from an object struct schema.
*/
type Optionalize<S extends object> = OmitBy<S, undefined> & Partial<PickBy<S, undefined>>;
type ObjectType<S extends ObjectSchema> = Simplify<Optionalize<{
[K in keyof S]: Infer<S[K]>;
}>>;
/**

@@ -77,2 +97,12 @@ * Omit properties from a type that extend from a specific type.

/**
* Normalize properties of a type that allow `undefined` to make them optional.
*/
type Optionalize<S extends object> = OmitBy<S, undefined> & Partial<PickBy<S, undefined>>;
/**
* Transform an object schema type to represent a partial.
*/
type PartialObjectSchema<S extends ObjectSchema> = {
[K in keyof S]: Struct<Infer<S[K]> | undefined>;
};
/**
* Pick properties from a type that extend from a specific type.

@@ -90,22 +120,2 @@ */

/**
* Assign properties from one type to another, overwriting existing.
*/
type Assign<T, U> = Simplify<U & Omit<T, keyof U>>;
/**
* A schema for object structs.
*/
type ObjectSchema = Record<string, Struct<any, any>>;
/**
* Infer a type from an object struct schema.
*/
type ObjectType<S extends ObjectSchema> = Simplify<Optionalize<{
[K in keyof S]: Infer<S[K]>;
}>>;
/**
* Transform an object schema type to represent a partial.
*/
type PartialObjectSchema<S extends ObjectSchema> = {
[K in keyof S]: Struct<Infer<S[K]> | undefined>;
};
/**
* A schema for any type of struct.

@@ -120,13 +130,31 @@ */

] extends [
IsGenericString<T>
] ? null : EnumSchema<T> : T extends number | boolean | bigint | symbol | undefined | null | Function | Date | Error | RegExp ? null : T extends Map<any, any> ? null : T extends WeakMap<any, any> ? null : T extends Set<any> ? null : T extends WeakSet<any> ? null : T extends Array<infer E> ? T extends IsTuple<T> ? null : Struct<E> : T extends Promise<any> ? null : T extends object ? T extends IsRecord<T> ? null : {
IsMatch<T, string>
] ? null : [
T
] extends [
IsUnion<T>
] ? EnumSchema<T> : T : [
T
] extends [
number
] ? [
T
] extends [
IsMatch<T, number>
] ? null : [
T
] extends [
IsUnion<T>
] ? EnumSchema<T> : T : [
T
] extends [
boolean
] ? [
T
] extends [
IsMatch<T, boolean>
] ? null : T : T extends bigint | symbol | undefined | null | Function | Date | Error | RegExp | Map<any, any> | WeakMap<any, any> | Set<any> | WeakSet<any> | Promise<any> ? null : T extends Array<infer E> ? T extends IsTuple<T> ? null : Struct<E> : T extends object ? T extends IsRecord<T> ? null : {
[K in keyof T]: Describe<T[K]>;
} : null;
/**
* A schema for enum structs.
*/
type EnumSchema<T extends string> = {
[K in T]: K;
};
/**
* A schema for tuple structs.

@@ -562,5 +590,5 @@ */

*/
declare function literal<T extends boolean>(constant: T): Struct<T, null>;
declare function literal<T extends number>(constant: T): Struct<T, null>;
declare function literal<T extends string>(constant: T): Struct<T, null>;
declare function literal<T extends boolean>(constant: T): Struct<T, T>;
declare function literal<T extends number>(constant: T): Struct<T, T>;
declare function literal<T extends string>(constant: T): Struct<T, T>;
declare function literal<T>(constant: T): Struct<T, null>;

@@ -567,0 +595,0 @@ /**

@@ -668,4 +668,11 @@ /**

const description = print(constant);
return define('literal', value => {
return value === constant || "Expected the literal `" + description + "`, but received: " + print(value);
const t = typeof constant;
return new Struct({
type: 'literal',
schema: t === 'string' || t === 'number' || t === 'boolean' ? constant : null,
validator(value) {
return value === constant || "Expected the literal `" + description + "`, but received: " + print(value);
}
});

@@ -672,0 +679,0 @@ }

@@ -76,5 +76,5 @@ import { Infer, Struct } from '../struct';

*/
export declare function literal<T extends boolean>(constant: T): Struct<T, null>;
export declare function literal<T extends number>(constant: T): Struct<T, null>;
export declare function literal<T extends string>(constant: T): Struct<T, null>;
export declare function literal<T extends boolean>(constant: T): Struct<T, T>;
export declare function literal<T extends number>(constant: T): Struct<T, T>;
export declare function literal<T extends string>(constant: T): Struct<T, T>;
export declare function literal<T>(constant: T): Struct<T, null>;

@@ -81,0 +81,0 @@ /**

@@ -41,6 +41,16 @@ import { Struct, Infer, Result, Context, Describe } from './struct';

/**
* Check if a type is a tuple.
* Assign properties from one type to another, overwriting existing.
*/
export declare type IsTuple<T> = T extends [any] ? T : T extends [any, any] ? T : T extends [any, any, any] ? T : T extends [any, any, any, any] ? T : T extends [any, any, any, any, any] ? T : never;
export declare type Assign<T, U> = Simplify<U & Omit<T, keyof U>>;
/**
* A schema for enum structs.
*/
export declare type EnumSchema<T extends string | number> = {
[K in T]: K;
};
/**
* Check if a type is an exact match.
*/
export declare type IsMatch<T, G> = T extends G ? (G extends T ? T : never) : never;
/**
* Check if a type is a record type.

@@ -50,10 +60,20 @@ */

/**
* Check if a type is a generic string type.
* Check if a type is a tuple.
*/
export declare type IsGenericString<T> = T extends string ? string extends T ? T : never : never;
export declare type IsTuple<T> = T extends [any] ? T : T extends [any, any] ? T : T extends [any, any, any] ? T : T extends [any, any, any, any] ? T : T extends [any, any, any, any, any] ? T : never;
/**
* Normalize properties of a type that allow `undefined` to make them optional.
* Check if a type is a union.
*/
export declare type Optionalize<S extends object> = OmitBy<S, undefined> & Partial<PickBy<S, undefined>>;
export declare type IsUnion<T, U extends T = T> = (T extends any ? (U extends T ? false : true) : false) extends false ? never : T;
/**
* A schema for object structs.
*/
export declare type ObjectSchema = Record<string, Struct<any, any>>;
/**
* Infer a type from an object struct schema.
*/
export declare type ObjectType<S extends ObjectSchema> = Simplify<Optionalize<{
[K in keyof S]: Infer<S[K]>;
}>>;
/**
* Omit properties from a type that extend from a specific type.

@@ -65,2 +85,12 @@ */

/**
* Normalize properties of a type that allow `undefined` to make them optional.
*/
export declare type Optionalize<S extends object> = OmitBy<S, undefined> & Partial<PickBy<S, undefined>>;
/**
* Transform an object schema type to represent a partial.
*/
export declare type PartialObjectSchema<S extends ObjectSchema> = {
[K in keyof S]: Struct<Infer<S[K]> | undefined>;
};
/**
* Pick properties from a type that extend from a specific type.

@@ -77,35 +107,10 @@ */

} & {};
export declare type If<B extends Boolean, Then, Else> = B extends true ? Then : Else;
/**
* Assign properties from one type to another, overwriting existing.
*/
export declare type Assign<T, U> = Simplify<U & Omit<T, keyof U>>;
/**
* A schema for object structs.
*/
export declare type ObjectSchema = Record<string, Struct<any, any>>;
/**
* Infer a type from an object struct schema.
*/
export declare type ObjectType<S extends ObjectSchema> = Simplify<Optionalize<{
[K in keyof S]: Infer<S[K]>;
}>>;
/**
* Transform an object schema type to represent a partial.
*/
export declare type PartialObjectSchema<S extends ObjectSchema> = {
[K in keyof S]: Struct<Infer<S[K]> | undefined>;
};
/**
* A schema for any type of struct.
*/
export declare type StructSchema<T> = [T] extends [string] ? [T] extends [IsGenericString<T>] ? null : EnumSchema<T> : T extends number | boolean | bigint | symbol | undefined | null | Function | Date | Error | RegExp ? null : T extends Map<any, any> ? null : T extends WeakMap<any, any> ? null : T extends Set<any> ? null : T extends WeakSet<any> ? null : T extends Array<infer E> ? T extends IsTuple<T> ? null : Struct<E> : T extends Promise<any> ? null : T extends object ? T extends IsRecord<T> ? null : {
export declare type StructSchema<T> = [T] extends [string] ? [T] extends [IsMatch<T, string>] ? null : [T] extends [IsUnion<T>] ? EnumSchema<T> : T : [T] extends [number] ? [T] extends [IsMatch<T, number>] ? null : [T] extends [IsUnion<T>] ? EnumSchema<T> : T : [T] extends [boolean] ? [T] extends [IsMatch<T, boolean>] ? null : T : T extends bigint | symbol | undefined | null | Function | Date | Error | RegExp | Map<any, any> | WeakMap<any, any> | Set<any> | WeakSet<any> | Promise<any> ? null : T extends Array<infer E> ? T extends IsTuple<T> ? null : Struct<E> : T extends object ? T extends IsRecord<T> ? null : {
[K in keyof T]: Describe<T[K]>;
} : null;
/**
* A schema for enum structs.
*/
export declare type EnumSchema<T extends string> = {
[K in T]: K;
};
/**
* A schema for tuple structs.

@@ -112,0 +117,0 @@ */

@@ -5,3 +5,3 @@ {

"description": "A simple and composable way to validate data in JavaScript (and TypeScript).",
"version": "0.14.1",
"version": "0.14.2",
"license": "MIT",

@@ -8,0 +8,0 @@ "repository": "git://github.com/ianstormtaylor/superstruct.git",

@@ -33,2 +33,20 @@ /**

/**
* Assign properties from one type to another, overwriting existing.
*/
type Assign<T, U> = Simplify<U & Omit<T, keyof U>>;
/**
* A schema for enum structs.
*/
type EnumSchema<T extends string | number> = {
[K in T]: K;
};
/**
* Check if a type is an exact match.
*/
type IsMatch<T, G> = T extends G ? (G extends T ? T : never) : never;
/**
* Check if a type is a record type.
*/
type IsRecord<T> = T extends object ? string extends keyof T ? T : never : never;
/**
* Check if a type is a tuple.

@@ -58,13 +76,15 @@ */

/**
* Check if a type is a record type.
* Check if a type is a union.
*/
type IsRecord<T> = T extends object ? string extends keyof T ? T : never : never;
type IsUnion<T, U extends T = T> = (T extends any ? (U extends T ? false : true) : false) extends false ? never : T;
/**
* Check if a type is a generic string type.
* A schema for object structs.
*/
type IsGenericString<T> = T extends string ? string extends T ? T : never : never;
type ObjectSchema = Record<string, Struct<any, any>>;
/**
* Normalize properties of a type that allow `undefined` to make them optional.
* Infer a type from an object struct schema.
*/
type Optionalize<S extends object> = OmitBy<S, undefined> & Partial<PickBy<S, undefined>>;
type ObjectType<S extends ObjectSchema> = Simplify<Optionalize<{
[K in keyof S]: Infer<S[K]>;
}>>;
/**

@@ -77,2 +97,12 @@ * Omit properties from a type that extend from a specific type.

/**
* Normalize properties of a type that allow `undefined` to make them optional.
*/
type Optionalize<S extends object> = OmitBy<S, undefined> & Partial<PickBy<S, undefined>>;
/**
* Transform an object schema type to represent a partial.
*/
type PartialObjectSchema<S extends ObjectSchema> = {
[K in keyof S]: Struct<Infer<S[K]> | undefined>;
};
/**
* Pick properties from a type that extend from a specific type.

@@ -90,22 +120,2 @@ */

/**
* Assign properties from one type to another, overwriting existing.
*/
type Assign<T, U> = Simplify<U & Omit<T, keyof U>>;
/**
* A schema for object structs.
*/
type ObjectSchema = Record<string, Struct<any, any>>;
/**
* Infer a type from an object struct schema.
*/
type ObjectType<S extends ObjectSchema> = Simplify<Optionalize<{
[K in keyof S]: Infer<S[K]>;
}>>;
/**
* Transform an object schema type to represent a partial.
*/
type PartialObjectSchema<S extends ObjectSchema> = {
[K in keyof S]: Struct<Infer<S[K]> | undefined>;
};
/**
* A schema for any type of struct.

@@ -120,13 +130,31 @@ */

] extends [
IsGenericString<T>
] ? null : EnumSchema<T> : T extends number | boolean | bigint | symbol | undefined | null | Function | Date | Error | RegExp ? null : T extends Map<any, any> ? null : T extends WeakMap<any, any> ? null : T extends Set<any> ? null : T extends WeakSet<any> ? null : T extends Array<infer E> ? T extends IsTuple<T> ? null : Struct<E> : T extends Promise<any> ? null : T extends object ? T extends IsRecord<T> ? null : {
IsMatch<T, string>
] ? null : [
T
] extends [
IsUnion<T>
] ? EnumSchema<T> : T : [
T
] extends [
number
] ? [
T
] extends [
IsMatch<T, number>
] ? null : [
T
] extends [
IsUnion<T>
] ? EnumSchema<T> : T : [
T
] extends [
boolean
] ? [
T
] extends [
IsMatch<T, boolean>
] ? null : T : T extends bigint | symbol | undefined | null | Function | Date | Error | RegExp | Map<any, any> | WeakMap<any, any> | Set<any> | WeakSet<any> | Promise<any> ? null : T extends Array<infer E> ? T extends IsTuple<T> ? null : Struct<E> : T extends object ? T extends IsRecord<T> ? null : {
[K in keyof T]: Describe<T[K]>;
} : null;
/**
* A schema for enum structs.
*/
type EnumSchema<T extends string> = {
[K in T]: K;
};
/**
* A schema for tuple structs.

@@ -562,5 +590,5 @@ */

*/
declare function literal<T extends boolean>(constant: T): Struct<T, null>;
declare function literal<T extends number>(constant: T): Struct<T, null>;
declare function literal<T extends string>(constant: T): Struct<T, null>;
declare function literal<T extends boolean>(constant: T): Struct<T, T>;
declare function literal<T extends number>(constant: T): Struct<T, T>;
declare function literal<T extends string>(constant: T): Struct<T, T>;
declare function literal<T>(constant: T): Struct<T, null>;

@@ -567,0 +595,0 @@ /**

@@ -674,4 +674,11 @@ (function (global, factory) {

const description = print(constant);
return define('literal', value => {
return value === constant || "Expected the literal `" + description + "`, but received: " + print(value);
const t = typeof constant;
return new Struct({
type: 'literal',
schema: t === 'string' || t === 'number' || t === 'boolean' ? constant : null,
validator(value) {
return value === constant || "Expected the literal `" + description + "`, but received: " + print(value);
}
});

@@ -678,0 +685,0 @@ }

@@ -33,2 +33,20 @@ /**

/**
* Assign properties from one type to another, overwriting existing.
*/
type Assign<T, U> = Simplify<U & Omit<T, keyof U>>;
/**
* A schema for enum structs.
*/
type EnumSchema<T extends string | number> = {
[K in T]: K;
};
/**
* Check if a type is an exact match.
*/
type IsMatch<T, G> = T extends G ? (G extends T ? T : never) : never;
/**
* Check if a type is a record type.
*/
type IsRecord<T> = T extends object ? string extends keyof T ? T : never : never;
/**
* Check if a type is a tuple.

@@ -58,13 +76,15 @@ */

/**
* Check if a type is a record type.
* Check if a type is a union.
*/
type IsRecord<T> = T extends object ? string extends keyof T ? T : never : never;
type IsUnion<T, U extends T = T> = (T extends any ? (U extends T ? false : true) : false) extends false ? never : T;
/**
* Check if a type is a generic string type.
* A schema for object structs.
*/
type IsGenericString<T> = T extends string ? string extends T ? T : never : never;
type ObjectSchema = Record<string, Struct<any, any>>;
/**
* Normalize properties of a type that allow `undefined` to make them optional.
* Infer a type from an object struct schema.
*/
type Optionalize<S extends object> = OmitBy<S, undefined> & Partial<PickBy<S, undefined>>;
type ObjectType<S extends ObjectSchema> = Simplify<Optionalize<{
[K in keyof S]: Infer<S[K]>;
}>>;
/**

@@ -77,2 +97,12 @@ * Omit properties from a type that extend from a specific type.

/**
* Normalize properties of a type that allow `undefined` to make them optional.
*/
type Optionalize<S extends object> = OmitBy<S, undefined> & Partial<PickBy<S, undefined>>;
/**
* Transform an object schema type to represent a partial.
*/
type PartialObjectSchema<S extends ObjectSchema> = {
[K in keyof S]: Struct<Infer<S[K]> | undefined>;
};
/**
* Pick properties from a type that extend from a specific type.

@@ -90,22 +120,2 @@ */

/**
* Assign properties from one type to another, overwriting existing.
*/
type Assign<T, U> = Simplify<U & Omit<T, keyof U>>;
/**
* A schema for object structs.
*/
type ObjectSchema = Record<string, Struct<any, any>>;
/**
* Infer a type from an object struct schema.
*/
type ObjectType<S extends ObjectSchema> = Simplify<Optionalize<{
[K in keyof S]: Infer<S[K]>;
}>>;
/**
* Transform an object schema type to represent a partial.
*/
type PartialObjectSchema<S extends ObjectSchema> = {
[K in keyof S]: Struct<Infer<S[K]> | undefined>;
};
/**
* A schema for any type of struct.

@@ -120,13 +130,31 @@ */

] extends [
IsGenericString<T>
] ? null : EnumSchema<T> : T extends number | boolean | bigint | symbol | undefined | null | Function | Date | Error | RegExp ? null : T extends Map<any, any> ? null : T extends WeakMap<any, any> ? null : T extends Set<any> ? null : T extends WeakSet<any> ? null : T extends Array<infer E> ? T extends IsTuple<T> ? null : Struct<E> : T extends Promise<any> ? null : T extends object ? T extends IsRecord<T> ? null : {
IsMatch<T, string>
] ? null : [
T
] extends [
IsUnion<T>
] ? EnumSchema<T> : T : [
T
] extends [
number
] ? [
T
] extends [
IsMatch<T, number>
] ? null : [
T
] extends [
IsUnion<T>
] ? EnumSchema<T> : T : [
T
] extends [
boolean
] ? [
T
] extends [
IsMatch<T, boolean>
] ? null : T : T extends bigint | symbol | undefined | null | Function | Date | Error | RegExp | Map<any, any> | WeakMap<any, any> | Set<any> | WeakSet<any> | Promise<any> ? null : T extends Array<infer E> ? T extends IsTuple<T> ? null : Struct<E> : T extends object ? T extends IsRecord<T> ? null : {
[K in keyof T]: Describe<T[K]>;
} : null;
/**
* A schema for enum structs.
*/
type EnumSchema<T extends string> = {
[K in T]: K;
};
/**
* A schema for tuple structs.

@@ -562,5 +590,5 @@ */

*/
declare function literal<T extends boolean>(constant: T): Struct<T, null>;
declare function literal<T extends number>(constant: T): Struct<T, null>;
declare function literal<T extends string>(constant: T): Struct<T, null>;
declare function literal<T extends boolean>(constant: T): Struct<T, T>;
declare function literal<T extends number>(constant: T): Struct<T, T>;
declare function literal<T extends string>(constant: T): Struct<T, T>;
declare function literal<T>(constant: T): Struct<T, null>;

@@ -567,0 +595,0 @@ /**

@@ -1,1 +0,1 @@

!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).Superstruct={})}(this,(function(e){"use strict";class t extends TypeError{constructor(e,t){let n;const{message:r,...o}=e,{path:i}=e;super(0===i.length?r:"At path: "+i.join(".")+" -- "+r),Object.assign(this,o),this.name=this.constructor.name,this.failures=()=>{var r;return null!=(r=n)?r:n=[e,...t()]}}}function n(e){return"object"==typeof e&&null!=e}function r(e){if("[object Object]"!==Object.prototype.toString.call(e))return!1;const t=Object.getPrototypeOf(e);return null===t||t===Object.prototype}function o(e){return"string"==typeof e?JSON.stringify(e):""+e}function i(e,t,n,r){if(!0===e)return;!1===e?e={}:"string"==typeof e&&(e={message:e});const{path:i,branch:c}=t,{type:a}=n,{refinement:s,message:u="Expected a value of type `"+a+"`"+(s?" with refinement `"+s+"`":"")+", but received: `"+o(r)+"`"}=e;return{value:r,type:a,refinement:s,key:i[i.length-1],path:i,branch:c,...e,message:u}}function*c(e,t,r,o){var c;n(c=e)&&"function"==typeof c[Symbol.iterator]||(e=[e]);for(const n of e){const e=i(n,t,r,o);e&&(yield e)}}function*a(e,t,r={}){const{path:o=[],branch:i=[e],coerce:c=!1,mask:s=!1}=r,u={path:o,branch:i};if(c&&(e=t.coercer(e,u),s&&"type"!==t.type&&n(t.schema)&&n(e)&&!Array.isArray(e)))for(const n in e)void 0===t.schema[n]&&delete e[n];let f=!0;for(const n of t.validator(e,u))f=!1,yield[n,void 0];for(let[r,l,d]of t.entries(e,u)){const t=a(l,d,{path:void 0===r?o:[...o,r],branch:void 0===r?i:[...i,l],coerce:c,mask:s});for(const o of t)o[0]?(f=!1,yield[o[0],void 0]):c&&(l=o[1],void 0===r?e=l:e instanceof Map?e.set(r,l):e instanceof Set?e.add(l):n(e)&&(e[r]=l))}if(f)for(const n of t.refiner(e,u))f=!1,yield[n,void 0];f&&(yield[void 0,e])}class s{constructor(e){const{type:t,schema:n,validator:r,refiner:o,coercer:i=(e=>e),entries:a=function*(){}}=e;this.type=t,this.schema=n,this.entries=a,this.coercer=i,this.validator=r?(e,t)=>c(r(e,t),t,this,e):()=>[],this.refiner=o?(e,t)=>c(o(e,t),t,this,e):()=>[]}assert(e){return u(e,this)}create(e){return f(e,this)}is(e){return d(e,this)}mask(e){return l(e,this)}validate(e,t={}){return p(e,this,t)}}function u(e,t){const n=p(e,t);if(n[0])throw n[0]}function f(e,t){const n=p(e,t,{coerce:!0});if(n[0])throw n[0];return n[1]}function l(e,t){const n=p(e,t,{coerce:!0,mask:!0});if(n[0])throw n[0];return n[1]}function d(e,t){return!p(e,t)[0]}function p(e,n,r={}){const o=a(e,n,r),i=function(e){const{done:t,value:n}=e.next();return t?void 0:n}(o);if(i[0]){return[new t(i[0],(function*(){for(const e of o)e[0]&&(yield e[0])})),void 0]}return[void 0,i[1]]}function y(e,t){return new s({type:e,schema:null,validator:t})}function h(){return y("never",(()=>!1))}function v(e){const t=e?Object.keys(e):[],r=h();return new s({type:"object",schema:e||null,*entries(o){if(e&&n(o)){const n=new Set(Object.keys(o));for(const r of t)n.delete(r),yield[r,o[r],e[r]];for(const e of n)yield[e,o[e],r]}},validator:e=>n(e)||"Expected an object, but received: "+o(e),coercer:e=>n(e)?{...e}:e})}function m(e){return new s({...e,validator:(t,n)=>void 0===t||e.validator(t,n),refiner:(t,n)=>void 0===t||e.refiner(t,n)})}function b(){return y("string",(e=>"string"==typeof e||"Expected a string, but received: "+o(e)))}function g(){return y("unknown",(()=>!0))}function w(e,t,n){return new s({...e,coercer:(r,o)=>d(r,t)?e.coercer(n(r,o),o):e.coercer(r,o)})}function x(e,t,n){return new s({...e,*refiner(r,o){yield*e.refiner(r,o);const i=c(n(r,o),o,e,r);for(const e of i)yield{...e,refinement:t}}})}e.Struct=s,e.StructError=t,e.any=function(){return y("any",(()=>!0))},e.array=function(e){return new s({type:"array",schema:e,*entries(t){if(e&&Array.isArray(t))for(const[n,r]of t.entries())yield[n,r,e]},coercer:e=>Array.isArray(e)?e.slice():e,validator:e=>Array.isArray(e)||"Expected an array value, but received: "+o(e)})},e.assert=u,e.assign=function(...e){const t=e.map((e=>e.schema));return v(Object.assign({},...t))},e.boolean=function(){return y("boolean",(e=>"boolean"==typeof e))},e.coerce=w,e.create=f,e.date=function(){return y("date",(e=>e instanceof Date&&!isNaN(e.getTime())||"Expected a valid `Date` object, but received: "+o(e)))},e.defaulted=function(e,t,n={}){return w(e,g(),(e=>{const o="function"==typeof t?t():t;if(void 0===e)return o;if(!n.strict&&r(e)&&r(o)){const t={...e};let n=!1;for(const e in o)void 0===t[e]&&(t[e]=o[e],n=!0);if(n)return t}return e}))},e.define=y,e.deprecated=function(e,t){return new s({...e,refiner:(t,n)=>void 0===t||e.refiner(t,n),validator:(n,r)=>void 0===n||(t(n,r),e.validator(n,r))})},e.dynamic=function(e){return new s({type:"dynamic",schema:null,*entries(t,n){const r=e(t,n);yield*r.entries(t,n)},validator:(t,n)=>e(t,n).validator(t,n),coercer:(t,n)=>e(t,n).coercer(t,n)})},e.empty=function(e){const t="Expected an empty "+e.type;return x(e,"empty",(e=>{if(e instanceof Map||e instanceof Set){const{size:n}=e;return 0===n||t+" but received one with a size of `"+n+"`"}{const{length:n}=e;return 0===n||t+" but received one with a length of `"+n+"`"}}))},e.enums=function(e){const t={},n=e.map((e=>o(e))).join();for(const n of e)t[n]=n;return new s({type:"enums",schema:t,validator:t=>e.includes(t)||"Expected one of `"+n+"`, but received: "+o(t)})},e.func=function(){return y("func",(e=>"function"==typeof e||"Expected a function, but received: "+o(e)))},e.instance=function(e){return y("instance",(t=>t instanceof e||"Expected a `"+e.name+"` instance, but received: "+o(t)))},e.integer=function(){return y("integer",(e=>"number"==typeof e&&!isNaN(e)&&Number.isInteger(e)||"Expected an integer, but received: "+o(e)))},e.intersection=function(e){return new s({type:"intersection",schema:null,*entries(t,n){for(const r of e)yield*r.entries(t,n)},*validator(t,n){for(const r of e)yield*r.validator(t,n)},*refiner(t,n){for(const r of e)yield*r.refiner(t,n)}})},e.is=d,e.lazy=function(e){let t;return new s({type:"lazy",schema:null,*entries(n,r){null!=t||(t=e()),yield*t.entries(n,r)},validator:(n,r)=>(null!=t||(t=e()),t.validator(n,r)),coercer:(n,r)=>(null!=t||(t=e()),t.coercer(n,r))})},e.literal=function(e){const t=o(e);return y("literal",(n=>n===e||"Expected the literal `"+t+"`, but received: "+o(n)))},e.map=function(e,t){return new s({type:"map",schema:null,*entries(n){if(e&&t&&n instanceof Map)for(const[r,o]of n.entries())yield[r,r,e],yield[r,o,t]},coercer:e=>e instanceof Map?new Map(e):e,validator:e=>e instanceof Map||"Expected a `Map` object, but received: "+o(e)})},e.mask=l,e.max=function(e,t,n={}){const{exclusive:r}=n;return x(e,"max",(n=>r?n<t:n<=t||"Expected a "+e.type+" greater than "+(r?"":"or equal to ")+t+" but received `"+n+"`"))},e.min=function(e,t,n={}){const{exclusive:r}=n;return x(e,"min",(n=>r?n>t:n>=t||"Expected a "+e.type+" greater than "+(r?"":"or equal to ")+t+" but received `"+n+"`"))},e.never=h,e.nullable=function(e){return new s({...e,validator:(t,n)=>null===t||e.validator(t,n),refiner:(t,n)=>null===t||e.refiner(t,n)})},e.number=function(){return y("number",(e=>"number"==typeof e&&!isNaN(e)||"Expected a number, but received: "+o(e)))},e.object=v,e.omit=function(e,t){const{schema:n}=e,r={...n};for(const e of t)delete r[e];return v(r)},e.optional=m,e.partial=function(e){const t=e instanceof s?{...e.schema}:{...e};for(const e in t)t[e]=m(t[e]);return v(t)},e.pattern=function(e,t){return x(e,"pattern",(n=>t.test(n)||"Expected a "+e.type+" matching `/"+t.source+'/` but received "'+n+'"'))},e.pick=function(e,t){const{schema:n}=e,r={};for(const e of t)r[e]=n[e];return v(r)},e.record=function(e,t){return new s({type:"record",schema:null,*entries(r){if(n(r))for(const n in r){const o=r[n];yield[n,n,e],yield[n,o,t]}},validator:e=>n(e)||"Expected an object, but received: "+o(e)})},e.refine=x,e.regexp=function(){return y("regexp",(e=>e instanceof RegExp))},e.set=function(e){return new s({type:"set",schema:null,*entries(t){if(e&&t instanceof Set)for(const n of t)yield[n,n,e]},coercer:e=>e instanceof Set?new Set(e):e,validator:e=>e instanceof Set||"Expected a `Set` object, but received: "+o(e)})},e.size=function(e,t,n=t){const r="Expected a "+e.type,o=t===n?"of `"+t+"`":"between `"+t+"` and `"+n+"`";return x(e,"size",(e=>{if("number"==typeof e||e instanceof Date)return t<=e&&e<=n||r+" "+o+" but received `"+e+"`";if(e instanceof Map||e instanceof Set){const{size:i}=e;return t<=i&&i<=n||r+" with a size "+o+" but received one with a size of `"+i+"`"}{const{length:i}=e;return t<=i&&i<=n||r+" with a length "+o+" but received one with a length of `"+i+"`"}}))},e.string=b,e.struct=function(e,t){return console.warn("superstruct@0.11 - The `struct` helper has been renamed to `define`."),y(e,t)},e.trimmed=function(e){return w(e,b(),(e=>e.trim()))},e.tuple=function(e){const t=h();return new s({type:"tuple",schema:null,*entries(n){if(Array.isArray(n)){const r=Math.max(e.length,n.length);for(let o=0;o<r;o++)yield[o,n[o],e[o]||t]}},validator:e=>Array.isArray(e)||"Expected an array, but received: "+o(e)})},e.type=function(e){const t=Object.keys(e);return new s({type:"type",schema:e,*entries(r){if(n(r))for(const n of t)yield[n,r[n],e[n]]},validator:e=>n(e)||"Expected an object, but received: "+o(e)})},e.union=function(e){const t=e.map((e=>e.type)).join(" | ");return new s({type:"union",schema:null,validator(n,r){const i=[];for(const t of e){const[...e]=a(n,t,r),[o]=e;if(!o[0])return[];for(const[t]of e)t&&i.push(t)}return["Expected the value to satisfy a union of `"+t+"`, but received: "+o(n),...i]}})},e.unknown=g,e.validate=p,Object.defineProperty(e,"__esModule",{value:!0})}));
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).Superstruct={})}(this,(function(e){"use strict";class t extends TypeError{constructor(e,t){let n;const{message:r,...o}=e,{path:i}=e;super(0===i.length?r:"At path: "+i.join(".")+" -- "+r),Object.assign(this,o),this.name=this.constructor.name,this.failures=()=>{var r;return null!=(r=n)?r:n=[e,...t()]}}}function n(e){return"object"==typeof e&&null!=e}function r(e){if("[object Object]"!==Object.prototype.toString.call(e))return!1;const t=Object.getPrototypeOf(e);return null===t||t===Object.prototype}function o(e){return"string"==typeof e?JSON.stringify(e):""+e}function i(e,t,n,r){if(!0===e)return;!1===e?e={}:"string"==typeof e&&(e={message:e});const{path:i,branch:c}=t,{type:a}=n,{refinement:s,message:u="Expected a value of type `"+a+"`"+(s?" with refinement `"+s+"`":"")+", but received: `"+o(r)+"`"}=e;return{value:r,type:a,refinement:s,key:i[i.length-1],path:i,branch:c,...e,message:u}}function*c(e,t,r,o){var c;n(c=e)&&"function"==typeof c[Symbol.iterator]||(e=[e]);for(const n of e){const e=i(n,t,r,o);e&&(yield e)}}function*a(e,t,r={}){const{path:o=[],branch:i=[e],coerce:c=!1,mask:s=!1}=r,u={path:o,branch:i};if(c&&(e=t.coercer(e,u),s&&"type"!==t.type&&n(t.schema)&&n(e)&&!Array.isArray(e)))for(const n in e)void 0===t.schema[n]&&delete e[n];let f=!0;for(const n of t.validator(e,u))f=!1,yield[n,void 0];for(let[r,l,d]of t.entries(e,u)){const t=a(l,d,{path:void 0===r?o:[...o,r],branch:void 0===r?i:[...i,l],coerce:c,mask:s});for(const o of t)o[0]?(f=!1,yield[o[0],void 0]):c&&(l=o[1],void 0===r?e=l:e instanceof Map?e.set(r,l):e instanceof Set?e.add(l):n(e)&&(e[r]=l))}if(f)for(const n of t.refiner(e,u))f=!1,yield[n,void 0];f&&(yield[void 0,e])}class s{constructor(e){const{type:t,schema:n,validator:r,refiner:o,coercer:i=(e=>e),entries:a=function*(){}}=e;this.type=t,this.schema=n,this.entries=a,this.coercer=i,this.validator=r?(e,t)=>c(r(e,t),t,this,e):()=>[],this.refiner=o?(e,t)=>c(o(e,t),t,this,e):()=>[]}assert(e){return u(e,this)}create(e){return f(e,this)}is(e){return d(e,this)}mask(e){return l(e,this)}validate(e,t={}){return p(e,this,t)}}function u(e,t){const n=p(e,t);if(n[0])throw n[0]}function f(e,t){const n=p(e,t,{coerce:!0});if(n[0])throw n[0];return n[1]}function l(e,t){const n=p(e,t,{coerce:!0,mask:!0});if(n[0])throw n[0];return n[1]}function d(e,t){return!p(e,t)[0]}function p(e,n,r={}){const o=a(e,n,r),i=function(e){const{done:t,value:n}=e.next();return t?void 0:n}(o);if(i[0]){return[new t(i[0],(function*(){for(const e of o)e[0]&&(yield e[0])})),void 0]}return[void 0,i[1]]}function y(e,t){return new s({type:e,schema:null,validator:t})}function h(){return y("never",(()=>!1))}function v(e){const t=e?Object.keys(e):[],r=h();return new s({type:"object",schema:e||null,*entries(o){if(e&&n(o)){const n=new Set(Object.keys(o));for(const r of t)n.delete(r),yield[r,o[r],e[r]];for(const e of n)yield[e,o[e],r]}},validator:e=>n(e)||"Expected an object, but received: "+o(e),coercer:e=>n(e)?{...e}:e})}function m(e){return new s({...e,validator:(t,n)=>void 0===t||e.validator(t,n),refiner:(t,n)=>void 0===t||e.refiner(t,n)})}function b(){return y("string",(e=>"string"==typeof e||"Expected a string, but received: "+o(e)))}function g(){return y("unknown",(()=>!0))}function w(e,t,n){return new s({...e,coercer:(r,o)=>d(r,t)?e.coercer(n(r,o),o):e.coercer(r,o)})}function x(e,t,n){return new s({...e,*refiner(r,o){yield*e.refiner(r,o);const i=c(n(r,o),o,e,r);for(const e of i)yield{...e,refinement:t}}})}e.Struct=s,e.StructError=t,e.any=function(){return y("any",(()=>!0))},e.array=function(e){return new s({type:"array",schema:e,*entries(t){if(e&&Array.isArray(t))for(const[n,r]of t.entries())yield[n,r,e]},coercer:e=>Array.isArray(e)?e.slice():e,validator:e=>Array.isArray(e)||"Expected an array value, but received: "+o(e)})},e.assert=u,e.assign=function(...e){const t=e.map((e=>e.schema));return v(Object.assign({},...t))},e.boolean=function(){return y("boolean",(e=>"boolean"==typeof e))},e.coerce=w,e.create=f,e.date=function(){return y("date",(e=>e instanceof Date&&!isNaN(e.getTime())||"Expected a valid `Date` object, but received: "+o(e)))},e.defaulted=function(e,t,n={}){return w(e,g(),(e=>{const o="function"==typeof t?t():t;if(void 0===e)return o;if(!n.strict&&r(e)&&r(o)){const t={...e};let n=!1;for(const e in o)void 0===t[e]&&(t[e]=o[e],n=!0);if(n)return t}return e}))},e.define=y,e.deprecated=function(e,t){return new s({...e,refiner:(t,n)=>void 0===t||e.refiner(t,n),validator:(n,r)=>void 0===n||(t(n,r),e.validator(n,r))})},e.dynamic=function(e){return new s({type:"dynamic",schema:null,*entries(t,n){const r=e(t,n);yield*r.entries(t,n)},validator:(t,n)=>e(t,n).validator(t,n),coercer:(t,n)=>e(t,n).coercer(t,n)})},e.empty=function(e){const t="Expected an empty "+e.type;return x(e,"empty",(e=>{if(e instanceof Map||e instanceof Set){const{size:n}=e;return 0===n||t+" but received one with a size of `"+n+"`"}{const{length:n}=e;return 0===n||t+" but received one with a length of `"+n+"`"}}))},e.enums=function(e){const t={},n=e.map((e=>o(e))).join();for(const n of e)t[n]=n;return new s({type:"enums",schema:t,validator:t=>e.includes(t)||"Expected one of `"+n+"`, but received: "+o(t)})},e.func=function(){return y("func",(e=>"function"==typeof e||"Expected a function, but received: "+o(e)))},e.instance=function(e){return y("instance",(t=>t instanceof e||"Expected a `"+e.name+"` instance, but received: "+o(t)))},e.integer=function(){return y("integer",(e=>"number"==typeof e&&!isNaN(e)&&Number.isInteger(e)||"Expected an integer, but received: "+o(e)))},e.intersection=function(e){return new s({type:"intersection",schema:null,*entries(t,n){for(const r of e)yield*r.entries(t,n)},*validator(t,n){for(const r of e)yield*r.validator(t,n)},*refiner(t,n){for(const r of e)yield*r.refiner(t,n)}})},e.is=d,e.lazy=function(e){let t;return new s({type:"lazy",schema:null,*entries(n,r){null!=t||(t=e()),yield*t.entries(n,r)},validator:(n,r)=>(null!=t||(t=e()),t.validator(n,r)),coercer:(n,r)=>(null!=t||(t=e()),t.coercer(n,r))})},e.literal=function(e){const t=o(e),n=typeof e;return new s({type:"literal",schema:"string"===n||"number"===n||"boolean"===n?e:null,validator:n=>n===e||"Expected the literal `"+t+"`, but received: "+o(n)})},e.map=function(e,t){return new s({type:"map",schema:null,*entries(n){if(e&&t&&n instanceof Map)for(const[r,o]of n.entries())yield[r,r,e],yield[r,o,t]},coercer:e=>e instanceof Map?new Map(e):e,validator:e=>e instanceof Map||"Expected a `Map` object, but received: "+o(e)})},e.mask=l,e.max=function(e,t,n={}){const{exclusive:r}=n;return x(e,"max",(n=>r?n<t:n<=t||"Expected a "+e.type+" greater than "+(r?"":"or equal to ")+t+" but received `"+n+"`"))},e.min=function(e,t,n={}){const{exclusive:r}=n;return x(e,"min",(n=>r?n>t:n>=t||"Expected a "+e.type+" greater than "+(r?"":"or equal to ")+t+" but received `"+n+"`"))},e.never=h,e.nullable=function(e){return new s({...e,validator:(t,n)=>null===t||e.validator(t,n),refiner:(t,n)=>null===t||e.refiner(t,n)})},e.number=function(){return y("number",(e=>"number"==typeof e&&!isNaN(e)||"Expected a number, but received: "+o(e)))},e.object=v,e.omit=function(e,t){const{schema:n}=e,r={...n};for(const e of t)delete r[e];return v(r)},e.optional=m,e.partial=function(e){const t=e instanceof s?{...e.schema}:{...e};for(const e in t)t[e]=m(t[e]);return v(t)},e.pattern=function(e,t){return x(e,"pattern",(n=>t.test(n)||"Expected a "+e.type+" matching `/"+t.source+'/` but received "'+n+'"'))},e.pick=function(e,t){const{schema:n}=e,r={};for(const e of t)r[e]=n[e];return v(r)},e.record=function(e,t){return new s({type:"record",schema:null,*entries(r){if(n(r))for(const n in r){const o=r[n];yield[n,n,e],yield[n,o,t]}},validator:e=>n(e)||"Expected an object, but received: "+o(e)})},e.refine=x,e.regexp=function(){return y("regexp",(e=>e instanceof RegExp))},e.set=function(e){return new s({type:"set",schema:null,*entries(t){if(e&&t instanceof Set)for(const n of t)yield[n,n,e]},coercer:e=>e instanceof Set?new Set(e):e,validator:e=>e instanceof Set||"Expected a `Set` object, but received: "+o(e)})},e.size=function(e,t,n=t){const r="Expected a "+e.type,o=t===n?"of `"+t+"`":"between `"+t+"` and `"+n+"`";return x(e,"size",(e=>{if("number"==typeof e||e instanceof Date)return t<=e&&e<=n||r+" "+o+" but received `"+e+"`";if(e instanceof Map||e instanceof Set){const{size:i}=e;return t<=i&&i<=n||r+" with a size "+o+" but received one with a size of `"+i+"`"}{const{length:i}=e;return t<=i&&i<=n||r+" with a length "+o+" but received one with a length of `"+i+"`"}}))},e.string=b,e.struct=function(e,t){return console.warn("superstruct@0.11 - The `struct` helper has been renamed to `define`."),y(e,t)},e.trimmed=function(e){return w(e,b(),(e=>e.trim()))},e.tuple=function(e){const t=h();return new s({type:"tuple",schema:null,*entries(n){if(Array.isArray(n)){const r=Math.max(e.length,n.length);for(let o=0;o<r;o++)yield[o,n[o],e[o]||t]}},validator:e=>Array.isArray(e)||"Expected an array, but received: "+o(e)})},e.type=function(e){const t=Object.keys(e);return new s({type:"type",schema:e,*entries(r){if(n(r))for(const n of t)yield[n,r[n],e[n]]},validator:e=>n(e)||"Expected an object, but received: "+o(e)})},e.union=function(e){const t=e.map((e=>e.type)).join(" | ");return new s({type:"union",schema:null,validator(n,r){const i=[];for(const t of e){const[...e]=a(n,t,r),[o]=e;if(!o[0])return[];for(const[t]of e)t&&i.push(t)}return["Expected the value to satisfy a union of `"+t+"`, but received: "+o(n),...i]}})},e.unknown=g,e.validate=p,Object.defineProperty(e,"__esModule",{value:!0})}));

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc