1 |
|
2 |
|
3 |
|
4 | import { Class, TypedArray, ObservableLike, Primitive } from './types';
|
5 | declare const objectTypeNames: readonly ["Function", "Generator", "AsyncGenerator", "GeneratorFunction", "AsyncGeneratorFunction", "AsyncFunction", "Observable", "Array", "Buffer", "Object", "RegExp", "Date", "Error", "Map", "Set", "WeakMap", "WeakSet", "ArrayBuffer", "SharedArrayBuffer", "DataView", "Promise", "URL", "FormData", "URLSearchParams", "HTMLElement", ...("Int8Array" | "Uint8Array" | "Uint8ClampedArray" | "Int16Array" | "Uint16Array" | "Int32Array" | "Uint32Array" | "Float32Array" | "Float64Array" | "BigInt64Array" | "BigUint64Array")[]];
|
6 | declare type ObjectTypeName = typeof objectTypeNames[number];
|
7 | declare const primitiveTypeNames: readonly ["null", "undefined", "string", "number", "bigint", "boolean", "symbol"];
|
8 | declare type PrimitiveTypeName = typeof primitiveTypeNames[number];
|
9 | export declare type TypeName = ObjectTypeName | PrimitiveTypeName;
|
10 | declare function is(value: unknown): TypeName;
|
11 | declare namespace is {
|
12 | var undefined: (value: unknown) => value is undefined;
|
13 | var string: (value: unknown) => value is string;
|
14 | var number: (value: unknown) => value is number;
|
15 | var bigint: (value: unknown) => value is bigint;
|
16 | var function_: (value: unknown) => value is Function;
|
17 | var null_: (value: unknown) => value is null;
|
18 | var class_: (value: unknown) => value is Class<unknown, any[]>;
|
19 | var boolean: (value: unknown) => value is boolean;
|
20 | var symbol: (value: unknown) => value is symbol;
|
21 | var numericString: (value: unknown) => value is string;
|
22 | var array: <T = unknown>(value: unknown, assertion?: ((value: T) => value is T) | undefined) => value is T[];
|
23 | var buffer: (value: unknown) => value is Buffer;
|
24 | var nullOrUndefined: (value: unknown) => value is null | undefined;
|
25 | var object: (value: unknown) => value is object;
|
26 | var iterable: <T = unknown>(value: unknown) => value is Iterable<T>;
|
27 | var asyncIterable: <T = unknown>(value: unknown) => value is AsyncIterable<T>;
|
28 | var generator: (value: unknown) => value is Generator<unknown, any, unknown>;
|
29 | var asyncGenerator: (value: unknown) => value is AsyncGenerator<unknown, any, unknown>;
|
30 | var nativePromise: <T = unknown>(value: unknown) => value is Promise<T>;
|
31 | var promise: <T = unknown>(value: unknown) => value is Promise<T>;
|
32 | var generatorFunction: (value: unknown) => value is GeneratorFunction;
|
33 | var asyncGeneratorFunction: (value: unknown) => value is (...args: any[]) => Promise<unknown>;
|
34 | var asyncFunction: <T = unknown>(value: unknown) => value is (...args: any[]) => Promise<T>;
|
35 | var boundFunction: (value: unknown) => value is Function;
|
36 | var regExp: (value: unknown) => value is RegExp;
|
37 | var date: (value: unknown) => value is Date;
|
38 | var error: (value: unknown) => value is Error;
|
39 | var map: <Key = unknown, Value = unknown>(value: unknown) => value is Map<Key, Value>;
|
40 | var set: <T = unknown>(value: unknown) => value is Set<T>;
|
41 | var weakMap: <Key extends object = object, Value = unknown>(value: unknown) => value is WeakMap<Key, Value>;
|
42 | var weakSet: (value: unknown) => value is WeakSet<object>;
|
43 | var int8Array: (value: unknown) => value is Int8Array;
|
44 | var uint8Array: (value: unknown) => value is Uint8Array;
|
45 | var uint8ClampedArray: (value: unknown) => value is Uint8ClampedArray;
|
46 | var int16Array: (value: unknown) => value is Int16Array;
|
47 | var uint16Array: (value: unknown) => value is Uint16Array;
|
48 | var int32Array: (value: unknown) => value is Int32Array;
|
49 | var uint32Array: (value: unknown) => value is Uint32Array;
|
50 | var float32Array: (value: unknown) => value is Float32Array;
|
51 | var float64Array: (value: unknown) => value is Float64Array;
|
52 | var bigInt64Array: (value: unknown) => value is BigInt64Array;
|
53 | var bigUint64Array: (value: unknown) => value is BigUint64Array;
|
54 | var arrayBuffer: (value: unknown) => value is ArrayBuffer;
|
55 | var sharedArrayBuffer: (value: unknown) => value is SharedArrayBuffer;
|
56 | var dataView: (value: unknown) => value is DataView;
|
57 | var directInstanceOf: <T>(instance: unknown, class_: Class<T, any[]>) => instance is T;
|
58 | var urlInstance: (value: unknown) => value is URL;
|
59 | var urlString: (value: unknown) => value is string;
|
60 | var truthy: (value: unknown) => boolean;
|
61 | var falsy: (value: unknown) => boolean;
|
62 | var nan: (value: unknown) => boolean;
|
63 | var primitive: (value: unknown) => value is Primitive;
|
64 | var integer: (value: unknown) => value is number;
|
65 | var safeInteger: (value: unknown) => value is number;
|
66 | var plainObject: <Value = unknown>(value: unknown) => value is Record<string | number | symbol, Value>;
|
67 | var typedArray: (value: unknown) => value is TypedArray;
|
68 | var arrayLike: <T = unknown>(value: unknown) => value is ArrayLike<T>;
|
69 | var inRange: (value: number, range: number | number[]) => value is number;
|
70 | var domElement: (value: unknown) => value is HTMLElement;
|
71 | var observable: (value: unknown) => value is ObservableLike;
|
72 | var nodeStream: (value: unknown) => value is NodeStream;
|
73 | var infinite: (value: unknown) => value is number;
|
74 | var evenInteger: (value: number) => value is number;
|
75 | var oddInteger: (value: number) => value is number;
|
76 | var emptyArray: (value: unknown) => value is never[];
|
77 | var nonEmptyArray: (value: unknown) => value is unknown[];
|
78 | var emptyString: (value: unknown) => value is "";
|
79 | var nonEmptyString: (value: unknown) => value is string;
|
80 | var emptyStringOrWhitespace: (value: unknown) => value is string;
|
81 | var emptyObject: <Key extends string | number | symbol = string>(value: unknown) => value is Record<Key, never>;
|
82 | var nonEmptyObject: <Key extends string | number | symbol = string, Value = unknown>(value: unknown) => value is Record<Key, Value>;
|
83 | var emptySet: (value: unknown) => value is Set<never>;
|
84 | var nonEmptySet: <T = unknown>(value: unknown) => value is Set<T>;
|
85 | var emptyMap: (value: unknown) => value is Map<never, never>;
|
86 | var nonEmptyMap: <Key = unknown, Value = unknown>(value: unknown) => value is Map<Key, Value>;
|
87 | var propertyKey: (value: unknown) => value is string | number | symbol;
|
88 | var formData: (value: unknown) => value is FormData;
|
89 | var urlSearchParams: (value: unknown) => value is URLSearchParams;
|
90 | var any: (predicate: Predicate | Predicate[], ...values: unknown[]) => boolean;
|
91 | var all: (predicate: Predicate, ...values: unknown[]) => boolean;
|
92 | }
|
93 | export interface ArrayLike<T> {
|
94 | readonly [index: number]: T;
|
95 | readonly length: number;
|
96 | }
|
97 | export interface NodeStream extends NodeJS.EventEmitter {
|
98 | pipe<T extends NodeJS.WritableStream>(destination: T, options?: {
|
99 | end?: boolean;
|
100 | }): T;
|
101 | }
|
102 | export declare type Predicate = (value: unknown) => boolean;
|
103 | export declare const enum AssertionTypeDescription {
|
104 | class_ = "Class",
|
105 | numericString = "string with a number",
|
106 | nullOrUndefined = "null or undefined",
|
107 | iterable = "Iterable",
|
108 | asyncIterable = "AsyncIterable",
|
109 | nativePromise = "native Promise",
|
110 | urlString = "string with a URL",
|
111 | truthy = "truthy",
|
112 | falsy = "falsy",
|
113 | nan = "NaN",
|
114 | primitive = "primitive",
|
115 | integer = "integer",
|
116 | safeInteger = "integer",
|
117 | plainObject = "plain object",
|
118 | arrayLike = "array-like",
|
119 | typedArray = "TypedArray",
|
120 | domElement = "HTMLElement",
|
121 | nodeStream = "Node.js Stream",
|
122 | infinite = "infinite number",
|
123 | emptyArray = "empty array",
|
124 | nonEmptyArray = "non-empty array",
|
125 | emptyString = "empty string",
|
126 | nonEmptyString = "non-empty string",
|
127 | emptyStringOrWhitespace = "empty string or whitespace",
|
128 | emptyObject = "empty object",
|
129 | nonEmptyObject = "non-empty object",
|
130 | emptySet = "empty set",
|
131 | nonEmptySet = "non-empty set",
|
132 | emptyMap = "empty map",
|
133 | nonEmptyMap = "non-empty map",
|
134 | evenInteger = "even integer",
|
135 | oddInteger = "odd integer",
|
136 | directInstanceOf = "T",
|
137 | inRange = "in range",
|
138 | any = "predicate returns truthy for any value",
|
139 | all = "predicate returns truthy for all values"
|
140 | }
|
141 | interface Assert {
|
142 | undefined: (value: unknown) => asserts value is undefined;
|
143 | string: (value: unknown) => asserts value is string;
|
144 | number: (value: unknown) => asserts value is number;
|
145 | bigint: (value: unknown) => asserts value is bigint;
|
146 | function_: (value: unknown) => asserts value is Function;
|
147 | null_: (value: unknown) => asserts value is null;
|
148 | class_: (value: unknown) => asserts value is Class;
|
149 | boolean: (value: unknown) => asserts value is boolean;
|
150 | symbol: (value: unknown) => asserts value is symbol;
|
151 | numericString: (value: unknown) => asserts value is string;
|
152 | array: <T = unknown>(value: unknown, assertion?: (element: unknown) => asserts element is T) => asserts value is T[];
|
153 | buffer: (value: unknown) => asserts value is Buffer;
|
154 | nullOrUndefined: (value: unknown) => asserts value is null | undefined;
|
155 | object: <Key extends keyof any = string, Value = unknown>(value: unknown) => asserts value is Record<Key, Value>;
|
156 | iterable: <T = unknown>(value: unknown) => asserts value is Iterable<T>;
|
157 | asyncIterable: <T = unknown>(value: unknown) => asserts value is AsyncIterable<T>;
|
158 | generator: (value: unknown) => asserts value is Generator;
|
159 | asyncGenerator: (value: unknown) => asserts value is AsyncGenerator;
|
160 | nativePromise: <T = unknown>(value: unknown) => asserts value is Promise<T>;
|
161 | promise: <T = unknown>(value: unknown) => asserts value is Promise<T>;
|
162 | generatorFunction: (value: unknown) => asserts value is GeneratorFunction;
|
163 | asyncGeneratorFunction: (value: unknown) => asserts value is AsyncGeneratorFunction;
|
164 | asyncFunction: (value: unknown) => asserts value is Function;
|
165 | boundFunction: (value: unknown) => asserts value is Function;
|
166 | regExp: (value: unknown) => asserts value is RegExp;
|
167 | date: (value: unknown) => asserts value is Date;
|
168 | error: (value: unknown) => asserts value is Error;
|
169 | map: <Key = unknown, Value = unknown>(value: unknown) => asserts value is Map<Key, Value>;
|
170 | set: <T = unknown>(value: unknown) => asserts value is Set<T>;
|
171 | weakMap: <Key extends object = object, Value = unknown>(value: unknown) => asserts value is WeakMap<Key, Value>;
|
172 | weakSet: <T extends object = object>(value: unknown) => asserts value is WeakSet<T>;
|
173 | int8Array: (value: unknown) => asserts value is Int8Array;
|
174 | uint8Array: (value: unknown) => asserts value is Uint8Array;
|
175 | uint8ClampedArray: (value: unknown) => asserts value is Uint8ClampedArray;
|
176 | int16Array: (value: unknown) => asserts value is Int16Array;
|
177 | uint16Array: (value: unknown) => asserts value is Uint16Array;
|
178 | int32Array: (value: unknown) => asserts value is Int32Array;
|
179 | uint32Array: (value: unknown) => asserts value is Uint32Array;
|
180 | float32Array: (value: unknown) => asserts value is Float32Array;
|
181 | float64Array: (value: unknown) => asserts value is Float64Array;
|
182 | bigInt64Array: (value: unknown) => asserts value is BigInt64Array;
|
183 | bigUint64Array: (value: unknown) => asserts value is BigUint64Array;
|
184 | arrayBuffer: (value: unknown) => asserts value is ArrayBuffer;
|
185 | sharedArrayBuffer: (value: unknown) => asserts value is SharedArrayBuffer;
|
186 | dataView: (value: unknown) => asserts value is DataView;
|
187 | urlInstance: (value: unknown) => asserts value is URL;
|
188 | urlString: (value: unknown) => asserts value is string;
|
189 | truthy: (value: unknown) => asserts value is unknown;
|
190 | falsy: (value: unknown) => asserts value is unknown;
|
191 | nan: (value: unknown) => asserts value is unknown;
|
192 | primitive: (value: unknown) => asserts value is Primitive;
|
193 | integer: (value: unknown) => asserts value is number;
|
194 | safeInteger: (value: unknown) => asserts value is number;
|
195 | plainObject: <Value = unknown>(value: unknown) => asserts value is Record<PropertyKey, Value>;
|
196 | typedArray: (value: unknown) => asserts value is TypedArray;
|
197 | arrayLike: <T = unknown>(value: unknown) => asserts value is ArrayLike<T>;
|
198 | domElement: (value: unknown) => asserts value is HTMLElement;
|
199 | observable: (value: unknown) => asserts value is ObservableLike;
|
200 | nodeStream: (value: unknown) => asserts value is NodeStream;
|
201 | infinite: (value: unknown) => asserts value is number;
|
202 | emptyArray: (value: unknown) => asserts value is never[];
|
203 | nonEmptyArray: (value: unknown) => asserts value is unknown[];
|
204 | emptyString: (value: unknown) => asserts value is '';
|
205 | nonEmptyString: (value: unknown) => asserts value is string;
|
206 | emptyStringOrWhitespace: (value: unknown) => asserts value is string;
|
207 | emptyObject: <Key extends keyof any = string>(value: unknown) => asserts value is Record<Key, never>;
|
208 | nonEmptyObject: <Key extends keyof any = string, Value = unknown>(value: unknown) => asserts value is Record<Key, Value>;
|
209 | emptySet: (value: unknown) => asserts value is Set<never>;
|
210 | nonEmptySet: <T = unknown>(value: unknown) => asserts value is Set<T>;
|
211 | emptyMap: (value: unknown) => asserts value is Map<never, never>;
|
212 | nonEmptyMap: <Key = unknown, Value = unknown>(value: unknown) => asserts value is Map<Key, Value>;
|
213 | propertyKey: (value: unknown) => asserts value is PropertyKey;
|
214 | formData: (value: unknown) => asserts value is FormData;
|
215 | urlSearchParams: (value: unknown) => asserts value is URLSearchParams;
|
216 | evenInteger: (value: number) => asserts value is number;
|
217 | oddInteger: (value: number) => asserts value is number;
|
218 | directInstanceOf: <T>(instance: unknown, class_: Class<T>) => asserts instance is T;
|
219 | inRange: (value: number, range: number | number[]) => asserts value is number;
|
220 | any: (predicate: Predicate | Predicate[], ...values: unknown[]) => void | never;
|
221 | all: (predicate: Predicate, ...values: unknown[]) => void | never;
|
222 | }
|
223 | export declare const assert: Assert;
|
224 | export default is;
|
225 | export { Class, TypedArray, ObservableLike, Primitive } from './types';
|