@magic/types 0.1.23 → 0.1.25

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/types/lib.d.ts ADDED
@@ -0,0 +1,507 @@
1
+ export const is: {
2
+ isDeepEqual: {
3
+ /**
4
+ * @overload
5
+ * @param {unknown} a
6
+ * @param {unknown} b
7
+ * @returns {boolean}
8
+ */
9
+ (a: unknown, b: unknown): boolean
10
+ /**
11
+ * @overload
12
+ * @param {unknown} a
13
+ * @returns {(c: unknown) => boolean}
14
+ */
15
+ (a: unknown): (c: unknown) => boolean
16
+ }
17
+ deepEqual: {
18
+ /**
19
+ * @overload
20
+ * @param {unknown} a
21
+ * @param {unknown} b
22
+ * @returns {boolean}
23
+ */
24
+ (a: unknown, b: unknown): boolean
25
+ /**
26
+ * @overload
27
+ * @param {unknown} a
28
+ * @returns {(c: unknown) => boolean}
29
+ */
30
+ (a: unknown): (c: unknown) => boolean
31
+ }
32
+ deepEq: {
33
+ /**
34
+ * @overload
35
+ * @param {unknown} a
36
+ * @param {unknown} b
37
+ * @returns {boolean}
38
+ */
39
+ (a: unknown, b: unknown): boolean
40
+ /**
41
+ * @overload
42
+ * @param {unknown} a
43
+ * @returns {(c: unknown) => boolean}
44
+ */
45
+ (a: unknown): (c: unknown) => boolean
46
+ }
47
+ isDeepDifferent: {
48
+ /**
49
+ * @overload
50
+ * @param {unknown} a
51
+ * @param {unknown} b
52
+ * @returns {boolean}
53
+ */
54
+ (a: unknown, b: unknown): boolean
55
+ /**
56
+ * @overload
57
+ * @param {unknown} a
58
+ * @returns {(c: unknown) => boolean}
59
+ */
60
+ (a: unknown): (c: unknown) => boolean
61
+ }
62
+ deepDifferent: {
63
+ /**
64
+ * @overload
65
+ * @param {unknown} a
66
+ * @param {unknown} b
67
+ * @returns {boolean}
68
+ */
69
+ (a: unknown, b: unknown): boolean
70
+ /**
71
+ * @overload
72
+ * @param {unknown} a
73
+ * @returns {(c: unknown) => boolean}
74
+ */
75
+ (a: unknown): (c: unknown) => boolean
76
+ }
77
+ deepDiff: {
78
+ /**
79
+ * @overload
80
+ * @param {unknown} a
81
+ * @param {unknown} b
82
+ * @returns {boolean}
83
+ */
84
+ (a: unknown, b: unknown): boolean
85
+ /**
86
+ * @overload
87
+ * @param {unknown} a
88
+ * @returns {(c: unknown) => boolean}
89
+ */
90
+ (a: unknown): (c: unknown) => boolean
91
+ }
92
+ deep: {
93
+ isDifferent: {
94
+ /**
95
+ * @overload
96
+ * @param {unknown} a
97
+ * @param {unknown} b
98
+ * @returns {boolean}
99
+ */
100
+ (a: unknown, b: unknown): boolean
101
+ /**
102
+ * @overload
103
+ * @param {unknown} a
104
+ * @returns {(c: unknown) => boolean}
105
+ */
106
+ (a: unknown): (c: unknown) => boolean
107
+ }
108
+ different: {
109
+ /**
110
+ * @overload
111
+ * @param {unknown} a
112
+ * @param {unknown} b
113
+ * @returns {boolean}
114
+ */
115
+ (a: unknown, b: unknown): boolean
116
+ /**
117
+ * @overload
118
+ * @param {unknown} a
119
+ * @returns {(c: unknown) => boolean}
120
+ */
121
+ (a: unknown): (c: unknown) => boolean
122
+ }
123
+ diff: {
124
+ /**
125
+ * @overload
126
+ * @param {unknown} a
127
+ * @param {unknown} b
128
+ * @returns {boolean}
129
+ */
130
+ (a: unknown, b: unknown): boolean
131
+ /**
132
+ * @overload
133
+ * @param {unknown} a
134
+ * @returns {(c: unknown) => boolean}
135
+ */
136
+ (a: unknown): (c: unknown) => boolean
137
+ }
138
+ isEqual: {
139
+ /**
140
+ * @overload
141
+ * @param {unknown} a
142
+ * @param {unknown} b
143
+ * @returns {boolean}
144
+ */
145
+ (a: unknown, b: unknown): boolean
146
+ /**
147
+ * @overload
148
+ * @param {unknown} a
149
+ * @returns {(c: unknown) => boolean}
150
+ */
151
+ (a: unknown): (c: unknown) => boolean
152
+ }
153
+ equal: {
154
+ /**
155
+ * @overload
156
+ * @param {unknown} a
157
+ * @param {unknown} b
158
+ * @returns {boolean}
159
+ */
160
+ (a: unknown, b: unknown): boolean
161
+ /**
162
+ * @overload
163
+ * @param {unknown} a
164
+ * @returns {(c: unknown) => boolean}
165
+ */
166
+ (a: unknown): (c: unknown) => boolean
167
+ }
168
+ eq: {
169
+ /**
170
+ * @overload
171
+ * @param {unknown} a
172
+ * @param {unknown} b
173
+ * @returns {boolean}
174
+ */
175
+ (a: unknown, b: unknown): boolean
176
+ /**
177
+ * @overload
178
+ * @param {unknown} a
179
+ * @returns {(c: unknown) => boolean}
180
+ */
181
+ (a: unknown): (c: unknown) => boolean
182
+ }
183
+ }
184
+ count: (arg: unknown) => number
185
+ length: (arg: unknown) => number
186
+ len: (arg: unknown) => number
187
+ ln: (arg: unknown) => number
188
+ isError: (e: unknown) => e is Error
189
+ error: (e: unknown) => e is Error
190
+ err: (e: unknown) => e is Error
191
+ isIterable: (e: unknown) => e is Iterable<unknown>
192
+ isIter: (e: unknown) => e is Iterable<unknown>
193
+ iterable: (e: unknown) => e is Iterable<unknown>
194
+ iter: (e: unknown) => e is Iterable<unknown>
195
+ isEmail: (e: unknown) => e is string
196
+ isMail: (e: unknown) => e is string
197
+ email: (e: unknown) => e is string
198
+ mail: (e: unknown) => e is string
199
+ isNull: (e: unknown) => e is null
200
+ isNil: (e: unknown) => e is null
201
+ null: (e: unknown) => e is null
202
+ nil: (e: unknown) => e is null
203
+ isUndefinedOrNull: (e: unknown) => e is null | undefined
204
+ undefinedOrNull: (e: unknown) => e is null | undefined
205
+ undefinedOrNil: (e: unknown) => e is null | undefined
206
+ undefOrNull: (e: unknown) => e is null | undefined
207
+ undefOrNil: (e: unknown) => e is null | undefined
208
+ isBuffer: (e: unknown) => e is Buffer
209
+ buffer: (e: unknown) => e is Buffer
210
+ buff: (e: unknown) => e is Buffer
211
+ isPromise: (e: unknown) => e is Promise<unknown>
212
+ promise: (e: unknown) => e is Promise<unknown>
213
+ isThenable: (e: unknown) => e is Promise<unknown>
214
+ isThen: (e: unknown) => e is Promise<unknown>
215
+ thenable: (e: unknown) => e is Promise<unknown>
216
+ then: (e: unknown) => e is Promise<unknown>
217
+ isArguments: (e: unknown) => e is IArguments
218
+ isArgs: (e: unknown) => e is IArguments
219
+ arguments: (e: unknown) => e is IArguments
220
+ args: (e: unknown) => e is IArguments
221
+ isUUID: (e: unknown) => boolean
222
+ uuid: (e: unknown) => boolean
223
+ isType: (e: unknown, ...types: string[]) => boolean
224
+ testType: (e: unknown, ...types: string[]) => boolean
225
+ type: (e: unknown, ...types: string[]) => boolean
226
+ isTypes: (e: unknown, ...types: string[]) => boolean
227
+ test: (e: unknown, ...types: string[]) => boolean
228
+ types: (e: unknown, ...types: string[]) => boolean
229
+ is: (e: unknown, ...types: string[]) => boolean
230
+ isEmpty: (e: unknown) => boolean
231
+ empty: (e: unknown) => boolean
232
+ isNot: (e: unknown, ...types: string[]) => boolean
233
+ not: (e: unknown, ...types: string[]) => boolean
234
+ isNeq: (e: unknown, ...types: string[]) => boolean
235
+ neq: (e: unknown, ...types: string[]) => boolean
236
+ isArray: (e: unknown) => e is unknown[]
237
+ isArr: (e: unknown) => e is unknown[]
238
+ array: (e: unknown) => e is unknown[]
239
+ arr: (e: unknown) => e is unknown[]
240
+ isBoolean: (e: unknown) => e is boolean
241
+ isBool: (e: unknown) => e is boolean
242
+ boolean: (e: unknown) => e is boolean
243
+ bool: (e: unknown) => e is boolean
244
+ isDefined: (e: unknown) => e is NonNullable<unknown>
245
+ isDef: (e: unknown) => e is NonNullable<unknown>
246
+ defined: (e: unknown) => e is NonNullable<unknown>
247
+ def: (e: unknown) => e is NonNullable<unknown>
248
+ isUndefined: (e: unknown) => e is undefined
249
+ isUndef: (e: unknown) => e is undefined
250
+ undefined: (e: unknown) => e is undefined
251
+ undef: (e: unknown) => e is undefined
252
+ isFunction: (e: unknown) => e is Function
253
+ isFunc: (e: unknown) => e is Function
254
+ isFn: (e: unknown) => e is Function
255
+ function: (e: unknown) => e is Function
256
+ func: (e: unknown) => e is Function
257
+ fn: (e: unknown) => e is Function
258
+ isAsyncFunction: (e: unknown) => e is (...args: unknown[]) => Promise<unknown>
259
+ isAsyncFunc: (e: unknown) => e is (...args: unknown[]) => Promise<unknown>
260
+ isAsyncFn: (e: unknown) => e is (...args: unknown[]) => Promise<unknown>
261
+ asyncFunction: (e: unknown) => e is (...args: unknown[]) => Promise<unknown>
262
+ asyncFunc: (e: unknown) => e is (...args: unknown[]) => Promise<unknown>
263
+ asyncFn: (e: unknown) => e is (...args: unknown[]) => Promise<unknown>
264
+ isGeneratorFunction: (e: unknown) => e is GeneratorFunction
265
+ isGeneratorFn: (e: unknown) => e is GeneratorFunction
266
+ isGeneratorFunc: (e: unknown) => e is GeneratorFunction
267
+ generator: (e: unknown) => e is GeneratorFunction
268
+ isGenerator: (e: unknown) => e is GeneratorFunction
269
+ generatorFn: (e: unknown) => e is GeneratorFunction
270
+ generatorFunc: (e: unknown) => e is GeneratorFunction
271
+ generatorFunction: (e: unknown) => e is GeneratorFunction
272
+ isNumber: (e: unknown) => e is number
273
+ isNum: (e: unknown) => e is number
274
+ number: (e: unknown) => e is number
275
+ num: (e: unknown) => e is number
276
+ isInteger: (e: unknown) => e is number
277
+ isInt: (e: unknown) => e is number
278
+ integer: (e: unknown) => e is number
279
+ int: (e: unknown) => e is number
280
+ isFloat: (e: unknown) => e is number
281
+ float: (e: unknown) => e is number
282
+ isObject: (e: unknown) => e is object
283
+ isObj: (e: unknown) => e is object
284
+ object: (e: unknown) => e is object
285
+ obj: (e: unknown) => e is object
286
+ isObjectNative: (e: unknown) => e is Record<string, unknown>
287
+ objectNative: (e: unknown) => e is Record<string, unknown>
288
+ isMergeableObject: (e: unknown) => e is Record<string, unknown>
289
+ mergeableObject: (e: unknown) => e is Record<string, unknown>
290
+ isMergeable: (e: unknown) => e is Record<string, unknown>
291
+ mergeable: (e: unknown) => e is Record<string, unknown>
292
+ isString: (e: unknown) => e is string
293
+ isStr: (e: unknown) => e is string
294
+ string: (e: unknown) => e is string
295
+ str: (e: unknown) => e is string
296
+ isRGBAObject: (e: unknown) => e is {
297
+ r: number
298
+ g: number
299
+ b: number
300
+ a: number
301
+ }
302
+ isRGBA: (e: unknown) => e is {
303
+ r: number
304
+ g: number
305
+ b: number
306
+ a: number
307
+ }
308
+ rgbaObject: (e: unknown) => e is {
309
+ r: number
310
+ g: number
311
+ b: number
312
+ a: number
313
+ }
314
+ rgba: (e: unknown) => e is {
315
+ r: number
316
+ g: number
317
+ b: number
318
+ a: number
319
+ }
320
+ isRGBObject: (e: unknown) => e is {
321
+ r: number
322
+ g: number
323
+ b: number
324
+ }
325
+ isRGB: (e: unknown) => e is {
326
+ r: number
327
+ g: number
328
+ b: number
329
+ }
330
+ rgbObject: (e: unknown) => e is {
331
+ r: number
332
+ g: number
333
+ b: number
334
+ }
335
+ rgb: (e: unknown) => e is {
336
+ r: number
337
+ g: number
338
+ b: number
339
+ }
340
+ isHexColor: (e: unknown) => boolean
341
+ isHex: (e: unknown) => boolean
342
+ hexColor: (e: unknown) => boolean
343
+ hex: (e: unknown) => boolean
344
+ isHexColor3: (e: unknown) => boolean
345
+ isHex3: (e: unknown) => boolean
346
+ hexColor3: (e: unknown) => boolean
347
+ hex3: (e: unknown) => boolean
348
+ isHexColor4: (e: unknown) => boolean
349
+ isHex4: (e: unknown) => boolean
350
+ hexColor4: (e: unknown) => boolean
351
+ hex4: (e: unknown) => boolean
352
+ isHexColor6: (e: unknown) => boolean
353
+ isHex6: (e: unknown) => boolean
354
+ hexColor6: (e: unknown) => boolean
355
+ hex6: (e: unknown) => boolean
356
+ isHexColor8: (e: unknown) => boolean
357
+ isHex8: (e: unknown) => boolean
358
+ hexColor8: (e: unknown) => boolean
359
+ hex8: (e: unknown) => boolean
360
+ isHexAlphaColor: (e: unknown) => boolean
361
+ isHexa: (e: unknown) => boolean
362
+ hexAlphaColor: (e: unknown) => boolean
363
+ hexa: (e: unknown) => boolean
364
+ isHexAlphaColor4: (e: unknown) => boolean
365
+ isHexa4: (e: unknown) => boolean
366
+ hexAlphaColor4: (e: unknown) => boolean
367
+ hexa4: (e: unknown) => boolean
368
+ isHexAlphaColor8: (e: unknown) => boolean
369
+ isHexa8: (e: unknown) => boolean
370
+ hexAlphaColor8: (e: unknown) => boolean
371
+ hexa8: (e: unknown) => boolean
372
+ isColor: (e: unknown) => boolean
373
+ isCol: (e: unknown) => boolean
374
+ color: (e: unknown) => boolean
375
+ col: (e: unknown) => boolean
376
+ isComparable: (a: unknown) => a is string | number | boolean
377
+ Comparable: (a: unknown) => a is string | number | boolean
378
+ comparable: (a: unknown) => a is string | number | boolean
379
+ isDate: (e: unknown) => e is Date
380
+ isTime: (e: unknown) => e is Date
381
+ date: (e: unknown) => e is Date
382
+ time: (e: unknown) => e is Date
383
+ isRegExp: (e: unknown) => e is RegExp
384
+ isRegex: (e: unknown) => e is RegExp
385
+ regExp: (e: unknown) => e is RegExp
386
+ regexp: (e: unknown) => e is RegExp
387
+ regex: (e: unknown) => e is RegExp
388
+ isTruthy: (e: unknown) => boolean
389
+ truthy: (e: unknown) => boolean
390
+ isFalsy: (e: unknown) => boolean
391
+ falsy: (e: unknown) => boolean
392
+ isLengthGreater: {
393
+ /**
394
+ * @overload
395
+ * @param {unknown} a
396
+ * @param {unknown} b
397
+ * @returns {boolean}
398
+ */
399
+ (a: unknown, b: unknown): boolean
400
+ /**
401
+ * @overload
402
+ * @param {unknown} a
403
+ * @returns {(c: unknown) => boolean}
404
+ */
405
+ (a: unknown): (c: unknown) => boolean
406
+ }
407
+ isLengthGreaterOrEqual: {
408
+ /**
409
+ * @overload
410
+ * @param {unknown} a
411
+ * @param {unknown} b
412
+ * @returns {boolean}
413
+ */
414
+ (a: unknown, b: unknown): boolean
415
+ /**
416
+ * @overload
417
+ * @param {unknown} a
418
+ * @returns {(c: unknown) => boolean}
419
+ */
420
+ (a: unknown): (c: unknown) => boolean
421
+ }
422
+ isLengthSmaller: {
423
+ /**
424
+ * @overload
425
+ * @param {unknown} a
426
+ * @param {unknown} b
427
+ * @returns {boolean}
428
+ */
429
+ (a: unknown, b: unknown): boolean
430
+ /**
431
+ * @overload
432
+ * @param {unknown} a
433
+ * @returns {(c: unknown) => boolean}
434
+ */
435
+ (a: unknown): (c: unknown) => boolean
436
+ }
437
+ isLengthSmallerOrEqual: {
438
+ /**
439
+ * @overload
440
+ * @param {unknown} a
441
+ * @param {unknown} b
442
+ * @returns {boolean}
443
+ */
444
+ (a: unknown, b: unknown): boolean
445
+ /**
446
+ * @overload
447
+ * @param {unknown} a
448
+ * @returns {(c: unknown) => boolean}
449
+ */
450
+ (a: unknown): (c: unknown) => boolean
451
+ }
452
+ isLengthEqual: {
453
+ /**
454
+ * @overload
455
+ * @param {unknown} a
456
+ * @param {unknown} b
457
+ * @returns {boolean}
458
+ */
459
+ (a: unknown, b: unknown): boolean
460
+ /**
461
+ * @overload
462
+ * @param {unknown} a
463
+ * @returns {(c: unknown) => boolean}
464
+ */
465
+ (a: unknown): (c: unknown) => boolean
466
+ }
467
+ isMap: (a: unknown) => a is Map<unknown, unknown>
468
+ map: (a: unknown) => a is Map<unknown, unknown>
469
+ isSet: (a: unknown) => a is Set<unknown>
470
+ set: (a: unknown) => a is Set<unknown>
471
+ isWeakMap: (a: unknown) => a is WeakMap<any, unknown>
472
+ weakMap: (a: unknown) => a is WeakMap<any, unknown>
473
+ isWeakSet: (a: unknown) => a is WeakSet<any>
474
+ weakSet: (a: unknown) => a is WeakSet<any>
475
+ every: <T>(arr: T | T[], t: ((v: T) => boolean) | string) => boolean
476
+ all: <T>(arr: T | T[], t: ((v: T) => boolean) | string) => boolean
477
+ some: <T>(arr: T | T[], t: ((v: T) => boolean) | string) => boolean
478
+ none: <T>(arr: T | T[], t: ((v: T) => boolean) | string) => boolean
479
+ instance: (e: unknown, t: new (...args: any[]) => any) => boolean
480
+ instanceof: (e: unknown, t: new (...args: any[]) => any) => boolean
481
+ instanceOf: (e: unknown, t: new (...args: any[]) => any) => boolean
482
+ isCase: ((s: unknown, c?: 'up' | 'down') => boolean) & {
483
+ upper: (s: unknown) => boolean
484
+ lower: (s: unknown) => boolean
485
+ }
486
+ case: ((s: unknown, c?: 'up' | 'down') => boolean) & {
487
+ upper: (s: unknown) => boolean
488
+ lower: (s: unknown) => boolean
489
+ }
490
+ isUpperCase: (s: unknown) => s is string
491
+ upperCase: (s: unknown) => s is string
492
+ isLowerCase: (s: unknown) => s is string
493
+ lowerCase: (s: unknown) => s is string
494
+ same: (a: unknown, b: unknown) => boolean
495
+ sameType: (a: unknown, b: unknown) => boolean
496
+ isSameType: (a: unknown, b: unknown) => boolean
497
+ isSame: (a: unknown, b: unknown) => boolean
498
+ ownProp: <K extends string | number | symbol>(o: unknown, k: K) => o is Record<K, unknown>
499
+ prop: <K extends string | number | symbol>(o: unknown, k: K) => o is Record<K, unknown>
500
+ ownProperty: <K extends string | number | symbol>(o: unknown, k: K) => o is Record<K, unknown>
501
+ isOwnProp: <K extends string | number | symbol>(o: unknown, k: K) => o is Record<K, unknown>
502
+ isOwnProperty: <K extends string | number | symbol>(o: unknown, k: K) => o is Record<K, unknown>
503
+ isModule: (s: unknown) => s is ModuleLike
504
+ module: (s: unknown) => s is ModuleLike
505
+ }
506
+ export default is
507
+ import * as fns from './fns'
@@ -1,18 +0,0 @@
1
- import is from '../lib.mjs'
2
-
3
- import equal from './equal.mjs'
4
-
5
- export const different = (a, b) => {
6
- if (is.undefined(b)) {
7
- if (is.undefined(a)) {
8
- // this most likely is an argument error.
9
- return false
10
- }
11
-
12
- return c => different(a, c)
13
- }
14
-
15
- return !equal(a, b)
16
- }
17
-
18
- export default different
@@ -1,108 +0,0 @@
1
- // Written by Substack <3
2
-
3
- import is from '../lib.mjs'
4
-
5
- export const equal = (a, b) => {
6
- // curry
7
- if (is.undefined(b)) {
8
- if (is.undefined(a)) {
9
- // this is not true, but it has to be assumed this is an unintentional comparation
10
- return false
11
- }
12
-
13
- return c => equal(a, c)
14
- }
15
-
16
- if (is.null(b)) {
17
- return a === b
18
- }
19
-
20
- // types must match
21
- if (typeof a !== typeof b) {
22
- return false
23
- }
24
-
25
- // bool, string, number, falsy values
26
- if (is.comparable(a) || is.comparable(b)) {
27
- return a === b
28
- }
29
-
30
- // if (is.<arguments(a)) {
31
- // return is.length.eq(a, b)
32
- // }
33
-
34
- // identical 'prototype' property.
35
- if (a.prototype !== b.prototype) {
36
- return false
37
- }
38
-
39
- // real types must match too
40
- if (Object.prototype.toString.call(a) !== Object.prototype.toString.call(b)) {
41
- return false
42
- }
43
-
44
- // dates
45
- if (is.date(a)) {
46
- return a === b
47
- }
48
-
49
- // functions
50
- if (is.function(a)) {
51
- return a.toString() === b.toString()
52
- }
53
-
54
- // buffers
55
- if (is.buffer(a)) {
56
- if (a.length !== b.length) {
57
- return false
58
- }
59
-
60
- for (let i = 0; i < a.length; i++) {
61
- if (a[i] !== b[i]) {
62
- return false
63
- }
64
- }
65
-
66
- return true
67
- }
68
-
69
- // objects
70
- const ka = Object.keys(a)
71
- const kb = Object.keys(b)
72
-
73
- // having the same number of owned properties (keys incorporates
74
- // hasOwnProperty)
75
- if (ka.length !== kb.length) {
76
- return false
77
- }
78
- // the same set of keys (although not necessarily the same order),
79
- ka.sort()
80
- kb.sort()
81
- // ~~~cheap key test
82
- for (let i = ka.length - 1; i >= 0; i--) {
83
- if (ka[i] !== kb[i]) {
84
- return false
85
- }
86
- }
87
-
88
- // equivalent values for every corresponding key, and
89
- // ~~~possibly expensive deep test
90
- let key
91
- for (let i = ka.length - 1; i >= 0; i--) {
92
- key = ka[i]
93
-
94
- // in the first line of this function we assume that two undefined values are a bug.
95
- // here we have to assume that two undefined properties in an object are intentional.
96
- if (is.undefined(a[key])) {
97
- return a[key] === b[key]
98
- }
99
-
100
- if (!equal(a[key], b[key])) {
101
- return false
102
- }
103
- }
104
-
105
- return typeof a === typeof b
106
- }
107
-
108
- export default equal