type-plus 6.4.0 → 6.6.0
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/README.md +27 -15
- package/cjs/any/any_or_never.d.ts +0 -2
- package/cjs/any/any_or_never.d.ts.map +1 -1
- package/cjs/any/any_type.d.ts +2 -6
- package/cjs/any/any_type.d.ts.map +1 -1
- package/cjs/array/array.d.ts +0 -4
- package/cjs/array/array.d.ts.map +1 -1
- package/cjs/array/array_index.d.ts +7 -10
- package/cjs/array/array_index.d.ts.map +1 -1
- package/cjs/array/array_type.d.ts +0 -8
- package/cjs/array/array_type.d.ts.map +1 -1
- package/cjs/bigint/bigint_type.d.ts +4 -12
- package/cjs/bigint/bigint_type.d.ts.map +1 -1
- package/cjs/bigint/strict_bigint_type.d.ts +4 -12
- package/cjs/bigint/strict_bigint_type.d.ts.map +1 -1
- package/cjs/boolean/boolean_type.d.ts +0 -8
- package/cjs/boolean/boolean_type.d.ts.map +1 -1
- package/cjs/boolean/false_type.d.ts +0 -8
- package/cjs/boolean/false_type.d.ts.map +1 -1
- package/cjs/boolean/strict_boolean_type.d.ts +0 -8
- package/cjs/boolean/strict_boolean_type.d.ts.map +1 -1
- package/cjs/boolean/true_type.d.ts +0 -8
- package/cjs/boolean/true_type.d.ts.map +1 -1
- package/cjs/equal/equal.d.ts +4 -5
- package/cjs/equal/equal.d.ts.map +1 -1
- package/cjs/function/function_type.d.ts +0 -8
- package/cjs/function/function_type.d.ts.map +1 -1
- package/cjs/function/strict_function_type.d.ts +0 -8
- package/cjs/function/strict_function_type.d.ts.map +1 -1
- package/cjs/index.d.ts +3 -0
- package/cjs/index.d.ts.map +1 -1
- package/cjs/index.js.map +1 -1
- package/cjs/never/never_type.d.ts +2 -10
- package/cjs/never/never_type.d.ts.map +1 -1
- package/cjs/nominal/brand.d.ts +7 -5
- package/cjs/nominal/brand.d.ts.map +1 -1
- package/cjs/nominal/brand.js +4 -4
- package/cjs/nominal/brand.js.map +1 -1
- package/cjs/nominal/{types.d.ts → constants.d.ts} +1 -1
- package/cjs/nominal/constants.d.ts.map +1 -0
- package/cjs/nominal/{types.js → constants.js} +1 -1
- package/cjs/nominal/constants.js.map +1 -0
- package/cjs/nominal/flavor.d.ts +14 -3
- package/cjs/nominal/flavor.d.ts.map +1 -1
- package/cjs/nominal/flavor.js +2 -2
- package/cjs/nominal/flavor.js.map +1 -1
- package/cjs/nominal/nominal_match.js +2 -2
- package/cjs/nominal/nominal_match.js.map +1 -1
- package/cjs/null/null_type.d.ts +4 -12
- package/cjs/null/null_type.d.ts.map +1 -1
- package/cjs/number/integer.d.ts +1 -9
- package/cjs/number/integer.d.ts.map +1 -1
- package/cjs/number/negative.d.ts +0 -8
- package/cjs/number/negative.d.ts.map +1 -1
- package/cjs/number/number_type.d.ts +0 -8
- package/cjs/number/number_type.d.ts.map +1 -1
- package/cjs/number/numeric_type.d.ts +0 -8
- package/cjs/number/numeric_type.d.ts.map +1 -1
- package/cjs/number/positive.d.ts +1 -9
- package/cjs/number/positive.d.ts.map +1 -1
- package/cjs/number/strict_number_type.d.ts +4 -12
- package/cjs/number/strict_number_type.d.ts.map +1 -1
- package/cjs/object/object_type.d.ts +1 -9
- package/cjs/object/object_type.d.ts.map +1 -1
- package/cjs/string/strict_string_type.d.ts +14 -19
- package/cjs/string/strict_string_type.d.ts.map +1 -1
- package/cjs/string/string.d.ts +24 -0
- package/cjs/string/string.d.ts.map +1 -0
- package/cjs/string/string.js +3 -0
- package/cjs/string/string.js.map +1 -0
- package/cjs/string/string_plus.d.ts +27 -0
- package/cjs/string/string_plus.d.ts.map +1 -0
- package/cjs/string/string_plus.js +3 -0
- package/cjs/string/string_plus.js.map +1 -0
- package/cjs/string/string_type.d.ts +4 -12
- package/cjs/string/string_type.d.ts.map +1 -1
- package/cjs/symbol/symbol_type.d.ts +5 -15
- package/cjs/symbol/symbol_type.d.ts.map +1 -1
- package/cjs/tuple/tuple_type.d.ts +0 -8
- package/cjs/tuple/tuple_type.d.ts.map +1 -1
- package/cjs/type/failed.d.ts +32 -0
- package/cjs/type/failed.d.ts.map +1 -0
- package/cjs/type/failed.js +3 -0
- package/cjs/type/failed.js.map +1 -0
- package/cjs/undefined/undefined_type.d.ts +4 -12
- package/cjs/undefined/undefined_type.d.ts.map +1 -1
- package/cjs/union/union_to_intersection.d.ts.map +1 -0
- package/cjs/union/union_to_intersection.js.map +1 -0
- package/cjs/unknown/unknown_type.d.ts +4 -12
- package/cjs/unknown/unknown_type.d.ts.map +1 -1
- package/cjs/void/void_type.d.ts +0 -8
- package/cjs/void/void_type.d.ts.map +1 -1
- package/esm/any/any_or_never.d.ts +0 -2
- package/esm/any/any_or_never.d.ts.map +1 -1
- package/esm/any/any_type.d.ts +2 -6
- package/esm/any/any_type.d.ts.map +1 -1
- package/esm/array/array.d.ts +0 -4
- package/esm/array/array.d.ts.map +1 -1
- package/esm/array/array_index.d.ts +7 -10
- package/esm/array/array_index.d.ts.map +1 -1
- package/esm/array/array_type.d.ts +0 -8
- package/esm/array/array_type.d.ts.map +1 -1
- package/esm/bigint/bigint_type.d.ts +4 -12
- package/esm/bigint/bigint_type.d.ts.map +1 -1
- package/esm/bigint/strict_bigint_type.d.ts +4 -12
- package/esm/bigint/strict_bigint_type.d.ts.map +1 -1
- package/esm/boolean/boolean_type.d.ts +0 -8
- package/esm/boolean/boolean_type.d.ts.map +1 -1
- package/esm/boolean/false_type.d.ts +0 -8
- package/esm/boolean/false_type.d.ts.map +1 -1
- package/esm/boolean/strict_boolean_type.d.ts +0 -8
- package/esm/boolean/strict_boolean_type.d.ts.map +1 -1
- package/esm/boolean/true_type.d.ts +0 -8
- package/esm/boolean/true_type.d.ts.map +1 -1
- package/esm/equal/equal.d.ts +4 -5
- package/esm/equal/equal.d.ts.map +1 -1
- package/esm/function/function_type.d.ts +0 -8
- package/esm/function/function_type.d.ts.map +1 -1
- package/esm/function/strict_function_type.d.ts +0 -8
- package/esm/function/strict_function_type.d.ts.map +1 -1
- package/esm/index.d.ts +3 -0
- package/esm/index.d.ts.map +1 -1
- package/esm/index.js.map +1 -1
- package/esm/never/never_type.d.ts +2 -10
- package/esm/never/never_type.d.ts.map +1 -1
- package/esm/nominal/brand.d.ts +7 -5
- package/esm/nominal/brand.d.ts.map +1 -1
- package/esm/nominal/brand.js +4 -4
- package/esm/nominal/brand.js.map +1 -1
- package/esm/nominal/{types.d.ts → constants.d.ts} +1 -1
- package/esm/nominal/constants.d.ts.map +1 -0
- package/esm/nominal/{types.js → constants.js} +1 -1
- package/esm/nominal/constants.js.map +1 -0
- package/esm/nominal/flavor.d.ts +14 -3
- package/esm/nominal/flavor.d.ts.map +1 -1
- package/esm/nominal/flavor.js +1 -1
- package/esm/nominal/flavor.js.map +1 -1
- package/esm/nominal/nominal_match.js +1 -1
- package/esm/nominal/nominal_match.js.map +1 -1
- package/esm/null/null_type.d.ts +4 -12
- package/esm/null/null_type.d.ts.map +1 -1
- package/esm/number/integer.d.ts +1 -9
- package/esm/number/integer.d.ts.map +1 -1
- package/esm/number/negative.d.ts +0 -8
- package/esm/number/negative.d.ts.map +1 -1
- package/esm/number/number_type.d.ts +0 -8
- package/esm/number/number_type.d.ts.map +1 -1
- package/esm/number/numeric_type.d.ts +0 -8
- package/esm/number/numeric_type.d.ts.map +1 -1
- package/esm/number/positive.d.ts +1 -9
- package/esm/number/positive.d.ts.map +1 -1
- package/esm/number/strict_number_type.d.ts +4 -12
- package/esm/number/strict_number_type.d.ts.map +1 -1
- package/esm/object/object_type.d.ts +1 -9
- package/esm/object/object_type.d.ts.map +1 -1
- package/esm/string/strict_string_type.d.ts +14 -19
- package/esm/string/strict_string_type.d.ts.map +1 -1
- package/esm/string/string.d.ts +24 -0
- package/esm/string/string.d.ts.map +1 -0
- package/esm/string/string.js +2 -0
- package/esm/string/string.js.map +1 -0
- package/esm/string/string_plus.d.ts +27 -0
- package/esm/string/string_plus.d.ts.map +1 -0
- package/esm/string/string_plus.js +2 -0
- package/esm/string/string_plus.js.map +1 -0
- package/esm/string/string_type.d.ts +4 -12
- package/esm/string/string_type.d.ts.map +1 -1
- package/esm/symbol/symbol_type.d.ts +5 -15
- package/esm/symbol/symbol_type.d.ts.map +1 -1
- package/esm/tuple/tuple_type.d.ts +0 -8
- package/esm/tuple/tuple_type.d.ts.map +1 -1
- package/esm/type/failed.d.ts +32 -0
- package/esm/type/failed.d.ts.map +1 -0
- package/esm/type/failed.js +2 -0
- package/esm/type/failed.js.map +1 -0
- package/esm/undefined/undefined_type.d.ts +4 -12
- package/esm/undefined/undefined_type.d.ts.map +1 -1
- package/esm/union/union_to_intersection.d.ts.map +1 -0
- package/esm/union/union_to_intersection.js.map +1 -0
- package/esm/unknown/unknown_type.d.ts +4 -12
- package/esm/unknown/unknown_type.d.ts.map +1 -1
- package/esm/void/void_type.d.ts +0 -8
- package/esm/void/void_type.d.ts.map +1 -1
- package/package.json +6 -6
- package/ts/any/any_or_never.ts +0 -2
- package/ts/any/any_type.ts +2 -6
- package/ts/array/array.ts +0 -4
- package/ts/array/array_index.ts +7 -10
- package/ts/array/array_type.ts +0 -8
- package/ts/assertion/readme.md +1 -2
- package/ts/bigint/bigint_type.ts +4 -12
- package/ts/bigint/strict_bigint_type.ts +4 -12
- package/ts/boolean/boolean_type.ts +0 -8
- package/ts/boolean/false_type.ts +0 -8
- package/ts/boolean/strict_boolean_type.ts +0 -8
- package/ts/boolean/true_type.ts +0 -8
- package/ts/equal/equal.ts +9 -5
- package/ts/equal/readme.md +3 -0
- package/ts/function/function_type.ts +0 -8
- package/ts/function/strict_function_type.ts +0 -8
- package/ts/index.ts +4 -0
- package/ts/never/never_type.ts +2 -10
- package/ts/nominal/brand.ts +15 -7
- package/ts/nominal/flavor.ts +17 -2
- package/ts/nominal/nominal_match.ts +1 -1
- package/ts/null/null_type.ts +4 -12
- package/ts/number/integer.ts +1 -9
- package/ts/number/negative.ts +0 -8
- package/ts/number/number_type.ts +0 -8
- package/ts/number/numeric_type.ts +0 -8
- package/ts/number/positive.ts +1 -9
- package/ts/number/strict_number_type.ts +4 -12
- package/ts/object/object_type.ts +1 -9
- package/ts/string/readme.md +5 -0
- package/ts/string/strict_string_type.ts +15 -19
- package/ts/string/string.ts +36 -0
- package/ts/string/string_plus.ts +33 -0
- package/ts/string/string_type.ts +4 -12
- package/ts/symbol/symbol_type.ts +5 -17
- package/ts/tuple/tuple_type.ts +0 -8
- package/ts/type/failed.ts +32 -0
- package/ts/type/readme.md +22 -0
- package/ts/undefined/undefined_type.ts +4 -12
- package/ts/unknown/unknown_type.ts +4 -12
- package/ts/void/void_type.ts +0 -8
- package/cjs/nominal/types.d.ts.map +0 -1
- package/cjs/nominal/types.js.map +0 -1
- package/cjs/union_to_intersection.d.ts.map +0 -1
- package/cjs/union_to_intersection.js.map +0 -1
- package/esm/nominal/types.d.ts.map +0 -1
- package/esm/nominal/types.js.map +0 -1
- package/esm/union_to_intersection.d.ts.map +0 -1
- package/esm/union_to_intersection.js.map +0 -1
- /package/cjs/{union_to_intersection.d.ts → union/union_to_intersection.d.ts} +0 -0
- /package/cjs/{union_to_intersection.js → union/union_to_intersection.js} +0 -0
- /package/esm/{union_to_intersection.d.ts → union/union_to_intersection.d.ts} +0 -0
- /package/esm/{union_to_intersection.js → union/union_to_intersection.js} +0 -0
- /package/ts/nominal/{types.ts → constants.ts} +0 -0
- /package/ts/{union_to_intersection.ts → union/union_to_intersection.ts} +0 -0
|
@@ -4,8 +4,6 @@ import type { StrictNumberType } from '../number/strict_number_type.js';
|
|
|
4
4
|
* Check if the type `T` is an array and not a tuple.
|
|
5
5
|
*
|
|
6
6
|
* ```ts
|
|
7
|
-
* import type { ArrayType } from 'type-plus'
|
|
8
|
-
*
|
|
9
7
|
* type R = ArrayType<number[]> // number[]
|
|
10
8
|
*
|
|
11
9
|
* type R = ArrayType<[1]> // never
|
|
@@ -18,8 +16,6 @@ export type ArrayType<T, Then = T, Else = never> = IsNever<T, Else, [
|
|
|
18
16
|
* Check if the type `T` is not an array.
|
|
19
17
|
*
|
|
20
18
|
* ```ts
|
|
21
|
-
* import type { NotArrayType } from 'type-plus'
|
|
22
|
-
*
|
|
23
19
|
* type R = NotArrayType<number[]> // never
|
|
24
20
|
*
|
|
25
21
|
* type R = NotArrayType<number> // number
|
|
@@ -31,8 +27,6 @@ export type NotArrayType<T, Then = T, Else = never> = ArrayType<T, Else, Then>;
|
|
|
31
27
|
* Is `T` an array?
|
|
32
28
|
*
|
|
33
29
|
* ```ts
|
|
34
|
-
* import type { IsArray } from 'type-plus'
|
|
35
|
-
*
|
|
36
30
|
* type R = IsArray<number[]> // true
|
|
37
31
|
*
|
|
38
32
|
* type R = IsArray<number> // false
|
|
@@ -44,8 +38,6 @@ export type IsArray<T, Then = true, Else = false> = ArrayType<T, Then, Else>;
|
|
|
44
38
|
* Is `T` not an array?
|
|
45
39
|
*
|
|
46
40
|
* ```ts
|
|
47
|
-
* import type { IsNotArray } from 'type-plus'
|
|
48
|
-
*
|
|
49
41
|
* type R = IsNotArray<number[]> // false
|
|
50
42
|
*
|
|
51
43
|
* type R = IsNotArray<number> // true
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"array_type.d.ts","sourceRoot":"","sources":["../../ts/array/array_type.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAA;AACrD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAA;AAEvE
|
|
1
|
+
{"version":3,"file":"array_type.d.ts","sourceRoot":"","sources":["../../ts/array/array_type.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAA;AACrD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAA;AAEvE;;;;;;;;GAQG;AACH,MAAM,MAAM,SAAS,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,KAAK,IAAI,OAAO,CACzD,CAAC,EACD,IAAI,EACJ;IAAC,GAAG,EAAE;CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC,GAAG,gBAAgB,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,IAAI,CACrG,CAAA;AAED;;;;;;;;;GASG;AACH,MAAM,MAAM,YAAY,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,KAAK,IAAI,SAAS,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;AAE9E;;;;;;;;;GASG;AACH,MAAM,MAAM,OAAO,CAAC,CAAC,EAAE,IAAI,GAAG,IAAI,EAAE,IAAI,GAAG,KAAK,IAAI,SAAS,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;AAE5E;;;;;;;;;GASG;AACH,MAAM,MAAM,UAAU,CAAC,CAAC,EAAE,IAAI,GAAG,IAAI,EAAE,IAAI,GAAG,KAAK,IAAI,SAAS,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA"}
|
|
@@ -2,9 +2,7 @@ import type { IsAnyOrNever } from '../any/any_or_never.js';
|
|
|
2
2
|
/**
|
|
3
3
|
* Check if the type `T` is exactly `bigint`.
|
|
4
4
|
*
|
|
5
|
-
* ```
|
|
6
|
-
* import type { BigintType } from 'type-plus'
|
|
7
|
-
*
|
|
5
|
+
* ```ts
|
|
8
6
|
* type R = BigintType<bigint> // bigint
|
|
9
7
|
*
|
|
10
8
|
* type R = BigintType<1n> // never
|
|
@@ -17,9 +15,7 @@ export type BigintType<T, Then = T, Else = never> = IsAnyOrNever<T, Else, [T] ex
|
|
|
17
15
|
/**
|
|
18
16
|
* Is the type `T` exactly `bigint`.
|
|
19
17
|
*
|
|
20
|
-
* ```
|
|
21
|
-
* import type { IsBigint } from 'type-plus'
|
|
22
|
-
*
|
|
18
|
+
* ```ts
|
|
23
19
|
* type R = IsBigint<bigint> // true
|
|
24
20
|
*
|
|
25
21
|
* type R = IsBigint<1n> // false
|
|
@@ -32,9 +28,7 @@ export type IsBigint<T, Then = true, Else = false> = BigintType<T, Then, Else>;
|
|
|
32
28
|
/**
|
|
33
29
|
* Check if the type `T` is not exactly `null`.
|
|
34
30
|
*
|
|
35
|
-
* ```
|
|
36
|
-
* import type { NotBigintType } from 'type-plus'
|
|
37
|
-
*
|
|
31
|
+
* ```ts
|
|
38
32
|
* type R = NotBigintType<bigint> // never
|
|
39
33
|
*
|
|
40
34
|
* type R = NotBigintType<1n> // 1n
|
|
@@ -47,9 +41,7 @@ export type NotBigintType<T, Then = T, Else = never> = BigintType<T, Else, Then>
|
|
|
47
41
|
/**
|
|
48
42
|
* Is the type `T` not exactly `null`.
|
|
49
43
|
*
|
|
50
|
-
* ```
|
|
51
|
-
* import type { IsNotBigint } from 'type-plus'
|
|
52
|
-
*
|
|
44
|
+
* ```ts
|
|
53
45
|
* type R = IsNotBigint<bigint> // false
|
|
54
46
|
*
|
|
55
47
|
* type R = IsNotBigint<1n> // true
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bigint_type.d.ts","sourceRoot":"","sources":["../../ts/bigint/bigint_type.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AAE1D
|
|
1
|
+
{"version":3,"file":"bigint_type.d.ts","sourceRoot":"","sources":["../../ts/bigint/bigint_type.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AAE1D;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,UAAU,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,KAAK,IAAI,YAAY,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,IAAI,GAAG,IAAI,CAAC,CAAA;AAE7G;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,QAAQ,CAAC,CAAC,EAAE,IAAI,GAAG,IAAI,EAAE,IAAI,GAAG,KAAK,IAAI,UAAU,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;AAE9E;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,aAAa,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,KAAK,IAAI,UAAU,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;AAEhF;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,WAAW,CAAC,CAAC,EAAE,IAAI,GAAG,IAAI,EAAE,IAAI,GAAG,KAAK,IAAI,UAAU,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA"}
|
|
@@ -2,9 +2,7 @@ import type { IsAnyOrNever } from '../any/any_or_never.js';
|
|
|
2
2
|
/**
|
|
3
3
|
* Check if the type `T` is exactly `bigint`.
|
|
4
4
|
*
|
|
5
|
-
* ```
|
|
6
|
-
* import type { StrictBigintType } from 'type-plus'
|
|
7
|
-
*
|
|
5
|
+
* ```ts
|
|
8
6
|
* type R = StrictBigintType<bigint> // bigint
|
|
9
7
|
*
|
|
10
8
|
* type R = StrictBigintType<1n> // never
|
|
@@ -19,9 +17,7 @@ export type StrictBigintType<T, Then = T, Else = never> = IsAnyOrNever<T, Else,
|
|
|
19
17
|
/**
|
|
20
18
|
* Is the type `T` exactly `bigint`.
|
|
21
19
|
*
|
|
22
|
-
* ```
|
|
23
|
-
* import type { IsStrictBigint } from 'type-plus'
|
|
24
|
-
*
|
|
20
|
+
* ```ts
|
|
25
21
|
* type R = IsStrictBigint<bigint> // true
|
|
26
22
|
*
|
|
27
23
|
* type R = IsStrictBigint<1n> // false
|
|
@@ -34,9 +30,7 @@ export type IsStrictBigint<T, Then = true, Else = false> = StrictBigintType<T, T
|
|
|
34
30
|
/**
|
|
35
31
|
* Check if the type `T` is not exactly `bigint`.
|
|
36
32
|
*
|
|
37
|
-
* ```
|
|
38
|
-
* import type { NotStrictBigintType } from 'type-plus'
|
|
39
|
-
*
|
|
33
|
+
* ```ts
|
|
40
34
|
* type R = NotStrictBigintType<bigint> // never
|
|
41
35
|
*
|
|
42
36
|
* type R = NotStrictBigintType<1n> // 1n
|
|
@@ -49,9 +43,7 @@ export type NotStrictBigintType<T, Then = T, Else = never> = StrictBigintType<T,
|
|
|
49
43
|
/**
|
|
50
44
|
* Is the type `T` not exactly `bigint`.
|
|
51
45
|
*
|
|
52
|
-
* ```
|
|
53
|
-
* import type { IsNotStrictBigint } from 'type-plus'
|
|
54
|
-
*
|
|
46
|
+
* ```ts
|
|
55
47
|
* type R = IsNotStrictBigint<bigint> // false
|
|
56
48
|
*
|
|
57
49
|
* type R = IsNotStrictBigint<1n> // true
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"strict_bigint_type.d.ts","sourceRoot":"","sources":["../../ts/bigint/strict_bigint_type.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AAE1D
|
|
1
|
+
{"version":3,"file":"strict_bigint_type.d.ts","sourceRoot":"","sources":["../../ts/bigint/strict_bigint_type.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AAE1D;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,gBAAgB,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,KAAK,IAAI,YAAY,CACrE,CAAC,EACD,IAAI,EACJ;IAAC,MAAM;CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,SAAS,GAAG,MAAM,EAAE,GAAG,IAAI,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,IAAI,CACxG,CAAA;AAED;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,cAAc,CAAC,CAAC,EAAE,IAAI,GAAG,IAAI,EAAE,IAAI,GAAG,KAAK,IAAI,gBAAgB,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;AAE1F;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,mBAAmB,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,KAAK,IAAI,gBAAgB,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;AAE5F;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,iBAAiB,CAAC,CAAC,EAAE,IAAI,GAAG,IAAI,EAAE,IAAI,GAAG,KAAK,IAAI,gBAAgB,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA"}
|
|
@@ -3,8 +3,6 @@ import type { IsAnyOrNever } from '../any/any_or_never.js';
|
|
|
3
3
|
* Check if the type `T` is `boolean`, including `true` and `false`.
|
|
4
4
|
*
|
|
5
5
|
* ```ts
|
|
6
|
-
* import type { BooleanType } from 'type-plus'
|
|
7
|
-
*
|
|
8
6
|
* type R = BooleanType<boolean> // boolean
|
|
9
7
|
* type R = BooleanType<true> // true
|
|
10
8
|
* type R = BooleanType<false> // false
|
|
@@ -20,8 +18,6 @@ export type BooleanType<T, Then = T, Else = never> = IsAnyOrNever<T, Else, [
|
|
|
20
18
|
* Check if the type `T` is not `boolean`, including `true` and `false`.
|
|
21
19
|
*
|
|
22
20
|
* ```ts
|
|
23
|
-
* import type { NotBooleanType } from 'type-plus'
|
|
24
|
-
*
|
|
25
21
|
* type R = NotBooleanType<boolean> // never
|
|
26
22
|
* type R = NotBooleanType<true> // never
|
|
27
23
|
* type R = NotBooleanType<false> // never
|
|
@@ -35,8 +31,6 @@ export type NotBooleanType<T, Then = T, Else = never> = BooleanType<T, Else, The
|
|
|
35
31
|
* Is the type `T` `boolean`, including `true` and `false`.
|
|
36
32
|
*
|
|
37
33
|
* ```ts
|
|
38
|
-
* import type { IsBoolean } from 'type-plus'
|
|
39
|
-
*
|
|
40
34
|
* type R = IsBoolean<boolean> // true
|
|
41
35
|
* type R = IsBoolean<true> // true
|
|
42
36
|
* type R = IsBoolean<false> // true
|
|
@@ -50,8 +44,6 @@ export type IsBoolean<T, Then = true, Else = false> = BooleanType<T, Then, Else>
|
|
|
50
44
|
* Is the type `T` not `boolean`, including `true` and `false`.
|
|
51
45
|
*
|
|
52
46
|
* ```ts
|
|
53
|
-
* import type { IsNotBoolean } from 'type-plus'
|
|
54
|
-
*
|
|
55
47
|
* type R = IsNotBoolean<boolean> // false
|
|
56
48
|
* type R = IsNotBoolean<true> // false
|
|
57
49
|
* type R = IsNotBoolean<false> // false
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"boolean_type.d.ts","sourceRoot":"","sources":["../../ts/boolean/boolean_type.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AAE1D
|
|
1
|
+
{"version":3,"file":"boolean_type.d.ts","sourceRoot":"","sources":["../../ts/boolean/boolean_type.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AAE1D;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,WAAW,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,KAAK,IAAI,YAAY,CAChE,CAAC,EACD,IAAI,EACJ;IAAC,CAAC;CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,IAAI,GAAG,IAAI,CACnC,CAAA;AAED;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,cAAc,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,KAAK,IAAI,WAAW,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;AAElF;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,SAAS,CAAC,CAAC,EAAE,IAAI,GAAG,IAAI,EAAE,IAAI,GAAG,KAAK,IAAI,WAAW,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;AAEhF;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,YAAY,CAAC,CAAC,EAAE,IAAI,GAAG,IAAI,EAAE,IAAI,GAAG,KAAK,IAAI,WAAW,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA"}
|
|
@@ -3,8 +3,6 @@ import type { IsAnyOrNever } from '../any/any_or_never.js';
|
|
|
3
3
|
* Check if the type `T` is exactly `false`.
|
|
4
4
|
*
|
|
5
5
|
* ```ts
|
|
6
|
-
* import type { FalseType } from 'type-plus'
|
|
7
|
-
*
|
|
8
6
|
* type R = FalseType<false> // false
|
|
9
7
|
*
|
|
10
8
|
* type R = FalseType<true> // never
|
|
@@ -19,8 +17,6 @@ export type FalseType<T, Then = T, Else = never> = IsAnyOrNever<T, Else, [
|
|
|
19
17
|
* Check if the type `T` is not exactly `false`.
|
|
20
18
|
*
|
|
21
19
|
* ```ts
|
|
22
|
-
* import type { NotFalseType } from 'type-plus'
|
|
23
|
-
*
|
|
24
20
|
* type R = NotFalseType<false> // never
|
|
25
21
|
*
|
|
26
22
|
* type R = NotFalseType<true> // true
|
|
@@ -32,8 +28,6 @@ export type NotFalseType<T, Then = T, Else = never> = FalseType<T, Else, Then>;
|
|
|
32
28
|
* Is the type `T` exactly `false`.
|
|
33
29
|
*
|
|
34
30
|
* ```ts
|
|
35
|
-
* import type { IsFalse } from 'type-plus'
|
|
36
|
-
*
|
|
37
31
|
* type R = IsFalse<false> // true
|
|
38
32
|
*
|
|
39
33
|
* type R = IsFalse<true> // false
|
|
@@ -45,8 +39,6 @@ export type IsFalse<T, Then = true, Else = false> = FalseType<T, Then, Else>;
|
|
|
45
39
|
* Is the type `T` not exactly `false`.
|
|
46
40
|
*
|
|
47
41
|
* ```ts
|
|
48
|
-
* import type { IsNotFalse } from 'type-plus'
|
|
49
|
-
*
|
|
50
42
|
* type R = IsNotFalse<false> // false
|
|
51
43
|
*
|
|
52
44
|
* type R = IsNotFalse<true> // true
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"false_type.d.ts","sourceRoot":"","sources":["../../ts/boolean/false_type.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AAE1D
|
|
1
|
+
{"version":3,"file":"false_type.d.ts","sourceRoot":"","sources":["../../ts/boolean/false_type.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AAE1D;;;;;;;;;GASG;AACH,MAAM,MAAM,SAAS,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,KAAK,IAAI,YAAY,CAC9D,CAAC,EACD,IAAI,EACJ;IAAC,CAAC;IAAE,KAAK;CAAC,SAAS,CAAC,KAAK,EAAE,CAAC,CAAC,GAAG,IAAI,GAAG,IAAI,CAC3C,CAAA;AAED;;;;;;;;;GASG;AACH,MAAM,MAAM,YAAY,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,KAAK,IAAI,SAAS,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;AAE9E;;;;;;;;;GASG;AACH,MAAM,MAAM,OAAO,CAAC,CAAC,EAAE,IAAI,GAAG,IAAI,EAAE,IAAI,GAAG,KAAK,IAAI,SAAS,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;AAE5E;;;;;;;;;GASG;AACH,MAAM,MAAM,UAAU,CAAC,CAAC,EAAE,IAAI,GAAG,IAAI,EAAE,IAAI,GAAG,KAAK,IAAI,SAAS,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA"}
|
|
@@ -3,8 +3,6 @@ import type { IsAnyOrNever } from '../any/any_or_never.js';
|
|
|
3
3
|
* Check if the type `T` is exactly `boolean`.
|
|
4
4
|
*
|
|
5
5
|
* ```ts
|
|
6
|
-
* import type { StrictBooleanType } from 'type-plus'
|
|
7
|
-
*
|
|
8
6
|
* type R = StrictBooleanType<boolean> // true
|
|
9
7
|
*
|
|
10
8
|
* type R = StrictBooleanType<true> // never
|
|
@@ -20,8 +18,6 @@ export type StrictBooleanType<T, Then = T, Else = never> = IsAnyOrNever<T, Else,
|
|
|
20
18
|
* Check if the type `T` is not exactly `boolean`.
|
|
21
19
|
*
|
|
22
20
|
* ```ts
|
|
23
|
-
* import type { NotStrictBooleanType } from 'type-plus'
|
|
24
|
-
*
|
|
25
21
|
* type R = NotStrictBooleanType<boolean> // never
|
|
26
22
|
*
|
|
27
23
|
* type R = NotStrictBooleanType<true> // true
|
|
@@ -34,8 +30,6 @@ export type NotStrictBooleanType<T, Then = T, Else = never> = StrictBooleanType<
|
|
|
34
30
|
* Is the type `T` exactly `boolean`.
|
|
35
31
|
*
|
|
36
32
|
* ```ts
|
|
37
|
-
* import type { IsStrictBoolean } from 'type-plus'
|
|
38
|
-
*
|
|
39
33
|
* type R = IsStrictBoolean<boolean> // true
|
|
40
34
|
*
|
|
41
35
|
* type R = IsStrictBoolean<true> // false
|
|
@@ -48,8 +42,6 @@ export type IsStrictBoolean<T, Then = true, Else = false> = StrictBooleanType<T,
|
|
|
48
42
|
* Is the type `T` not exactly `false`.
|
|
49
43
|
*
|
|
50
44
|
* ```ts
|
|
51
|
-
* import type { IsNotStrictBoolean } from 'type-plus'
|
|
52
|
-
*
|
|
53
45
|
* type R = IsNotStrictBoolean<boolean> // false
|
|
54
46
|
*
|
|
55
47
|
* type R = IsNotStrictBoolean<true> // true
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"strict_boolean_type.d.ts","sourceRoot":"","sources":["../../ts/boolean/strict_boolean_type.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AAE1D
|
|
1
|
+
{"version":3,"file":"strict_boolean_type.d.ts","sourceRoot":"","sources":["../../ts/boolean/strict_boolean_type.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AAE1D;;;;;;;;;;GAUG;AACH,MAAM,MAAM,iBAAiB,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,KAAK,IAAI,YAAY,CACtE,CAAC,EACD,IAAI,EACJ;IAAC,CAAC;IAAE,OAAO;CAAC,SAAS,CAAC,OAAO,EAAE,CAAC,CAAC,GAAG,IAAI,GAAG,IAAI,CAC/C,CAAA;AAED;;;;;;;;;;GAUG;AACH,MAAM,MAAM,oBAAoB,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,KAAK,IAAI,iBAAiB,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;AAE9F;;;;;;;;;;GAUG;AACH,MAAM,MAAM,eAAe,CAAC,CAAC,EAAE,IAAI,GAAG,IAAI,EAAE,IAAI,GAAG,KAAK,IAAI,iBAAiB,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;AAE5F;;;;;;;;;;GAUG;AACH,MAAM,MAAM,kBAAkB,CAAC,CAAC,EAAE,IAAI,GAAG,IAAI,EAAE,IAAI,GAAG,KAAK,IAAI,iBAAiB,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA"}
|
|
@@ -3,8 +3,6 @@ import type { IsAnyOrNever } from '../any/any_or_never.js';
|
|
|
3
3
|
* Check if the type `T` is exactly `true`.
|
|
4
4
|
*
|
|
5
5
|
* ```ts
|
|
6
|
-
* import type { TrueType } from 'type-plus'
|
|
7
|
-
*
|
|
8
6
|
* type R = TrueType<true> // true
|
|
9
7
|
*
|
|
10
8
|
* type R = TrueType<false> // never
|
|
@@ -19,8 +17,6 @@ export type TrueType<T, Then = T, Else = never> = IsAnyOrNever<T, Else, [
|
|
|
19
17
|
* Check if the type `T` is not exactly `true`.
|
|
20
18
|
*
|
|
21
19
|
* ```ts
|
|
22
|
-
* import type { NotTrueType } from 'type-plus'
|
|
23
|
-
*
|
|
24
20
|
* type R = NotTrueType<true> // never
|
|
25
21
|
*
|
|
26
22
|
* type R = NotTrueType<false> // false
|
|
@@ -32,8 +28,6 @@ export type NotTrueType<T, Then = T, Else = never> = TrueType<T, Else, Then>;
|
|
|
32
28
|
* Is the type `T` exactly `true`.
|
|
33
29
|
*
|
|
34
30
|
* ```ts
|
|
35
|
-
* import type { IsTrue } from 'type-plus'
|
|
36
|
-
*
|
|
37
31
|
* type R = IsTrue<true> // true
|
|
38
32
|
*
|
|
39
33
|
* type R = IsTrue<false> // false
|
|
@@ -45,8 +39,6 @@ export type IsTrue<T, Then = true, Else = false> = TrueType<T, Then, Else>;
|
|
|
45
39
|
* Is the type `T` not exactly `true`.
|
|
46
40
|
*
|
|
47
41
|
* ```ts
|
|
48
|
-
* import type { IsNotTrue } from 'type-plus'
|
|
49
|
-
*
|
|
50
42
|
* type R = IsNotTrue<true> // false
|
|
51
43
|
*
|
|
52
44
|
* type R = IsNotTrue<false> // true
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"true_type.d.ts","sourceRoot":"","sources":["../../ts/boolean/true_type.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AAE1D
|
|
1
|
+
{"version":3,"file":"true_type.d.ts","sourceRoot":"","sources":["../../ts/boolean/true_type.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AAE1D;;;;;;;;;GASG;AACH,MAAM,MAAM,QAAQ,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,KAAK,IAAI,YAAY,CAC7D,CAAC,EACD,IAAI,EACJ;IAAC,CAAC;IAAE,IAAI;CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,GAAG,IAAI,CACzC,CAAA;AAED;;;;;;;;;GASG;AACH,MAAM,MAAM,WAAW,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,KAAK,IAAI,QAAQ,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;AAE5E;;;;;;;;;GASG;AACH,MAAM,MAAM,MAAM,CAAC,CAAC,EAAE,IAAI,GAAG,IAAI,EAAE,IAAI,GAAG,KAAK,IAAI,QAAQ,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;AAE1E;;;;;;;;;GASG;AACH,MAAM,MAAM,SAAS,CAAC,CAAC,EAAE,IAAI,GAAG,IAAI,EAAE,IAAI,GAAG,KAAK,IAAI,QAAQ,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA"}
|
package/esm/equal/equal.d.ts
CHANGED
|
@@ -11,8 +11,6 @@ type IdentityEqual<A, B, Then, Else> = (<_>() => _ extends (A & _) | _ ? 1 : 2)
|
|
|
11
11
|
* Checks `A` and `B` are equal.
|
|
12
12
|
*
|
|
13
13
|
* ```ts
|
|
14
|
-
* import { type Equal } from 'type-plus'
|
|
15
|
-
*
|
|
16
14
|
* type R = Equal<1, 1> // true
|
|
17
15
|
* type R = Equal<any, any> // true
|
|
18
16
|
* type R = Equal<boolean, boolean> // true
|
|
@@ -25,7 +23,10 @@ type IdentityEqual<A, B, Then, Else> = (<_>() => _ extends (A & _) | _ ? 1 : 2)
|
|
|
25
23
|
* type R = Equal<{ a: 1 }, { a: 1; b: 2 }> // false
|
|
26
24
|
* ```
|
|
27
25
|
*/
|
|
28
|
-
export type Equal<A, B, Then = true, Else = false> = [A, B] extends [B, A] ? BothNever<A, B, Then, Else, BothAny<A, B, Then, Else, IdentityEqual<A, B, Then, And<IsObject<A>, IsObject<B>, IdentityEqual<Properties<A>, Properties<B>,
|
|
26
|
+
export type Equal<A, B, Then = true, Else = false> = [A, B] extends [B, A] ? BothNever<A, B, Then, Else, BothAny<A, B, Then, Else, IdentityEqual<A, B, Then, And<IsObject<A>, IsObject<B>, IdentityEqual<Properties<A>, Properties<B>, [
|
|
27
|
+
A,
|
|
28
|
+
B
|
|
29
|
+
] extends [(...args: infer P1) => any, (...args: infer P2) => any] ? Equal<P1, P2, Then, Else> : Then, Else>, [
|
|
29
30
|
A,
|
|
30
31
|
B
|
|
31
32
|
] extends [B, A] ? Then : Else>>>> : And<IsSymbol<A>, IsSymbol<B>, Then, Else>;
|
|
@@ -33,8 +34,6 @@ export type Equal<A, B, Then = true, Else = false> = [A, B] extends [B, A] ? Bot
|
|
|
33
34
|
* Checks `A` and `B` are not equal.
|
|
34
35
|
*
|
|
35
36
|
* ```ts
|
|
36
|
-
* import { type NotEqual } from 'type-plus'
|
|
37
|
-
*
|
|
38
37
|
* type R = NotEqual<1, 1> // false
|
|
39
38
|
* type R = NotEqual<any, any> // false
|
|
40
39
|
* type R = NotEqual<boolean, boolean> // false
|
package/esm/equal/equal.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"equal.d.ts","sourceRoot":"","sources":["../../ts/equal/equal.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAA;AAC/C,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAA;AACrD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAA;AACxD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAA;AACzD,OAAO,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAA;AACvD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAA;AAExD,KAAK,SAAS,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,IAAI,GAAG,CAC1C,OAAO,CAAC,CAAC,CAAC,EACV,OAAO,CAAC,CAAC,CAAC,EACV,IAAI,EACJ,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,CACrC,CAAA;AAED,KAAK,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC,CAAA;AAEtG,KAAK,aAAa,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,SAC/F,CAAC,CAAC,GAAG,CAAC,CAAC,GACP,CAAC,GACD,CAAC,GACD,CAAC,GACD,IAAI,GACJ,IAAI,CAAA;AAEP
|
|
1
|
+
{"version":3,"file":"equal.d.ts","sourceRoot":"","sources":["../../ts/equal/equal.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,8 +3,6 @@ import type { IsAnyOrNever } from '../any/any_or_never.js';
|
|
|
3
3
|
* Check if `T` is a `Function`.
|
|
4
4
|
*
|
|
5
5
|
* ```ts
|
|
6
|
-
* import type { FunctionType } from 'type-plus'
|
|
7
|
-
*
|
|
8
6
|
* type R = FunctionType<Function> // Function
|
|
9
7
|
* type R = FunctionType<() => void> // () => void
|
|
10
8
|
* type R = FunctionType<(() => void) | { a: 1 }> // (() => void) | { a: 1 }
|
|
@@ -21,8 +19,6 @@ export type FunctionType<T, Then = T, Else = never> = IsAnyOrNever<T, Else, [
|
|
|
21
19
|
* Is `T` a `Function`.
|
|
22
20
|
*
|
|
23
21
|
* ```ts
|
|
24
|
-
* import type { IsFunction } from 'type-plus'
|
|
25
|
-
*
|
|
26
22
|
* type R = IsFunction<Function> // Function
|
|
27
23
|
* type R = IsFunction<() => void> // () => void
|
|
28
24
|
* type R = IsFunction<(() => void) | { a: 1 }> // (() => void) | { a: 1 }
|
|
@@ -37,8 +33,6 @@ export type IsFunction<T, Then = true, Else = false> = FunctionType<T, Then, Els
|
|
|
37
33
|
* Check if `T` is not a `Function`.
|
|
38
34
|
*
|
|
39
35
|
* ```ts
|
|
40
|
-
* import type { NotFunctionType } from 'type-plus'
|
|
41
|
-
*
|
|
42
36
|
* type R = NotFunctionType<Function> // never
|
|
43
37
|
* type R = NotFunctionType<() => void> // never
|
|
44
38
|
* type R = NotFunctionType<(() => void) | { a: 1 }> // never
|
|
@@ -53,8 +47,6 @@ export type NotFunctionType<T, Then = T, Else = never> = FunctionType<T, Else, T
|
|
|
53
47
|
* Is `T` not a `Function`.
|
|
54
48
|
*
|
|
55
49
|
* ```ts
|
|
56
|
-
* import type { IsNotFunction } from 'type-plus'
|
|
57
|
-
*
|
|
58
50
|
* type R = IsNotFunction<Function> // false
|
|
59
51
|
* type R = IsNotFunction<() => void> // false
|
|
60
52
|
* type R = IsNotFunction<(() => void) | { a: 1 }> // false
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"function_type.d.ts","sourceRoot":"","sources":["../../ts/function/function_type.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AAE1D
|
|
1
|
+
{"version":3,"file":"function_type.d.ts","sourceRoot":"","sources":["../../ts/function/function_type.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AAE1D;;;;;;;;;;;;GAYG;AACH,MAAM,MAAM,YAAY,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,KAAK,IAAI,YAAY,CACjE,CAAC,EACD,IAAI,EACJ;IAAC,CAAC;CAAC,SAAS,CAAC,QAAQ,CAAC,GAAG,IAAI,GAAG,IAAI,CACpC,CAAA;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,MAAM,UAAU,CAAC,CAAC,EAAE,IAAI,GAAG,IAAI,EAAE,IAAI,GAAG,KAAK,IAAI,YAAY,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;AAElF;;;;;;;;;;;;GAYG;AACH,MAAM,MAAM,eAAe,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,KAAK,IAAI,YAAY,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;AAEpF;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,aAAa,CAAC,CAAC,EAAE,IAAI,GAAG,IAAI,EAAE,IAAI,GAAG,KAAK,IAAI,YAAY,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA"}
|
|
@@ -3,8 +3,6 @@ import type { IsAnyOrNever } from '../any/any_or_never.js';
|
|
|
3
3
|
* Check if `T` is exactly `Function`.
|
|
4
4
|
*
|
|
5
5
|
* ```ts
|
|
6
|
-
* import type { StrictFunctionType } from 'type-plus'
|
|
7
|
-
*
|
|
8
6
|
* type R = StrictFunctionType<Function> // Function
|
|
9
7
|
*
|
|
10
8
|
* type R = StrictFunctionType<() => void> // never
|
|
@@ -19,8 +17,6 @@ export type StrictFunctionType<T, Then = T, Else = never> = IsAnyOrNever<T, Else
|
|
|
19
17
|
* Check if `T` is not exactly `Function`.
|
|
20
18
|
*
|
|
21
19
|
* ```ts
|
|
22
|
-
* import type { NotStrictFunctionType } from 'type-plus'
|
|
23
|
-
*
|
|
24
20
|
* type R = NotStrictFunctionType<Function> // never
|
|
25
21
|
* type R = NotStrictFunctionType<() => void> // () => void
|
|
26
22
|
*
|
|
@@ -32,8 +28,6 @@ export type NotStrictFunctionType<T, Then = T, Else = never> = StrictFunctionTyp
|
|
|
32
28
|
* Is `T` exactly `Function`.
|
|
33
29
|
*
|
|
34
30
|
* ```ts
|
|
35
|
-
* import type { IsStrictFunction } from 'type-plus'
|
|
36
|
-
*
|
|
37
31
|
* type R = IsStrictFunction<Function> // true
|
|
38
32
|
*
|
|
39
33
|
* type R = IsStrictFunction<() => void> // false
|
|
@@ -45,8 +39,6 @@ export type IsStrictFunction<T, Then = true, Else = false> = StrictFunctionType<
|
|
|
45
39
|
* Is `T` not exactly `Function`.
|
|
46
40
|
*
|
|
47
41
|
* ```ts
|
|
48
|
-
* import type { IsNotStrictFunction } from 'type-plus'
|
|
49
|
-
*
|
|
50
42
|
* type R = IsNotStrictFunction<Function> // false
|
|
51
43
|
*
|
|
52
44
|
* type R = IsNotStrictFunction<() => void> // true
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"strict_function_type.d.ts","sourceRoot":"","sources":["../../ts/function/strict_function_type.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AAE1D
|
|
1
|
+
{"version":3,"file":"strict_function_type.d.ts","sourceRoot":"","sources":["../../ts/function/strict_function_type.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AAE1D;;;;;;;;;GASG;AACH,MAAM,MAAM,kBAAkB,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,KAAK,IAAI,YAAY,CACvE,CAAC,EACD,IAAI,EACJ;IAAC,CAAC;IAAE,QAAQ;CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC,CAAC,GAAG,IAAI,GAAG,IAAI,CACjD,CAAA;AAED;;;;;;;;;GASG;AACH,MAAM,MAAM,qBAAqB,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,KAAK,IAAI,kBAAkB,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;AAEhG;;;;;;;;;GASG;AACH,MAAM,MAAM,gBAAgB,CAAC,CAAC,EAAE,IAAI,GAAG,IAAI,EAAE,IAAI,GAAG,KAAK,IAAI,kBAAkB,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;AAE9F;;;;;;;;;GASG;AACH,MAAM,MAAM,mBAAmB,CAAC,CAAC,EAAE,IAAI,GAAG,IAAI,EAAE,IAAI,GAAG,KAAK,IAAI,kBAAkB,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA"}
|
package/esm/index.d.ts
CHANGED
|
@@ -39,11 +39,14 @@ export * from './predicates/index.js';
|
|
|
39
39
|
export type { PrimitiveTypes } from './primitive.js';
|
|
40
40
|
export * from './promise/index.js';
|
|
41
41
|
export type { IsNotStrictString, IsStrictString, NotStrictStringType, StrictStringType } from './string/strict_string_type.js';
|
|
42
|
+
export type { StringIncludes, StringSplit } from './string/string.js';
|
|
43
|
+
export type { StringPlus } from './string/string_plus.js';
|
|
42
44
|
export type { IsNotString, IsString, NotStringType, StringType } from './string/string_type.js';
|
|
43
45
|
export type { IsNotSymbol, IsSymbol, NotSymbolType, SymbolType } from './symbol/symbol_type.js';
|
|
44
46
|
export * from './testing/stub.js';
|
|
45
47
|
export * from './testing/test_type.js';
|
|
46
48
|
export type { IsNotTuple, IsTuple, NotTupleType, TupleType } from './tuple/tuple_type.js';
|
|
49
|
+
export type { Failed, FailedT } from './type/failed.js';
|
|
47
50
|
export type { IsNotUndefined, IsUndefined, NotUndefinedType, UndefinedType } from './undefined/undefined_type.js';
|
|
48
51
|
export type { UnionKeys } from './union_keys.js';
|
|
49
52
|
export type { IsNotUnknown, IsUnknown, NotUnknownType, UnknownType } from './unknown/unknown_type.js';
|
package/esm/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../ts/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../ts/index.ts"],"names":[],"mappings":"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"}
|
package/esm/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../ts/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,WAAW,CAAA;AAI7D,OAAO,KAAK,SAAS,MAAM,uBAAuB,CAAA;AAElD,cAAc,kBAAkB,CAAA;AAChC,cAAc,4BAA4B,CAAA;AAiB1C,cAAc,kBAAkB,CAAA;AAIhC,cAAc,gCAAgC,CAAA;AAQ9C,cAAc,uBAAuB,CAAA;AAcrC,cAAc,mBAAmB,CAAA;AACjC,cAAc,oBAAoB,CAAA;AAIlC,OAAO,KAAK,UAAU,MAAM,yBAAyB,CAAA;AAiBrD,cAAc,mBAAmB,CAAA;AAEjC,cAAc,uBAAuB,CAAA;AAErC,cAAc,oBAAoB,CAAA;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../ts/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,WAAW,CAAA;AAI7D,OAAO,KAAK,SAAS,MAAM,uBAAuB,CAAA;AAElD,cAAc,kBAAkB,CAAA;AAChC,cAAc,4BAA4B,CAAA;AAiB1C,cAAc,kBAAkB,CAAA;AAIhC,cAAc,gCAAgC,CAAA;AAQ9C,cAAc,uBAAuB,CAAA;AAcrC,cAAc,mBAAmB,CAAA;AACjC,cAAc,oBAAoB,CAAA;AAIlC,OAAO,KAAK,UAAU,MAAM,yBAAyB,CAAA;AAiBrD,cAAc,mBAAmB,CAAA;AAEjC,cAAc,uBAAuB,CAAA;AAErC,cAAc,oBAAoB,CAAA;AAWlC,cAAc,mBAAmB,CAAA;AACjC,cAAc,wBAAwB,CAAA;AAWtC,cAAc,kBAAkB,CAAA"}
|
|
@@ -12,8 +12,6 @@ export type Is_Never = Brand<'is_never', symbol>;
|
|
|
12
12
|
* If it is not, returns `Not_Never`.
|
|
13
13
|
*
|
|
14
14
|
* ```ts
|
|
15
|
-
* import type { NeverType } from 'type-plus'
|
|
16
|
-
*
|
|
17
15
|
* type R = NeverType<never> // never
|
|
18
16
|
*
|
|
19
17
|
* type R = NeverType<1> // 'not never'
|
|
@@ -25,8 +23,6 @@ export type NeverType<T, Then = T, Else = Not_Never> = [T, never] extends [never
|
|
|
25
23
|
* If it is not, returns `Is_Never`.
|
|
26
24
|
*
|
|
27
25
|
* ```ts
|
|
28
|
-
* import type { NotNeverType } from 'type-plus'
|
|
29
|
-
*
|
|
30
26
|
* type R = NotNeverType<1> // 1
|
|
31
27
|
*
|
|
32
28
|
* type R = NotNeverType<never> // 'is_never'
|
|
@@ -36,9 +32,7 @@ export type NotNeverType<T, Then = T, Else = Is_Never> = NeverType<T, Else, Then
|
|
|
36
32
|
/**
|
|
37
33
|
* Is `T` `never`.
|
|
38
34
|
*
|
|
39
|
-
* ```
|
|
40
|
-
* import type { IsNever } from 'type-plus'
|
|
41
|
-
*
|
|
35
|
+
* ```ts
|
|
42
36
|
* type R = IsNever<never> // true
|
|
43
37
|
*
|
|
44
38
|
* type R = IsNever<1> // false
|
|
@@ -48,9 +42,7 @@ export type IsNever<T, Then = true, Else = false> = NeverType<T, Then, Else>;
|
|
|
48
42
|
/**
|
|
49
43
|
* Is `T` not `never`.
|
|
50
44
|
*
|
|
51
|
-
* ```
|
|
52
|
-
* import type { IsNotNever } from 'type-plus'
|
|
53
|
-
*
|
|
45
|
+
* ```ts
|
|
54
46
|
* type R = IsNotNever<1> // true
|
|
55
47
|
*
|
|
56
48
|
* type R = IsNotNever<never> // false
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"never_type.d.ts","sourceRoot":"","sources":["../../ts/never/never_type.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAA;AAGhD;;GAEG;AACH,MAAM,MAAM,SAAS,GAAG,KAAK,CAAC,WAAW,EAAE,MAAM,CAAC,CAAA;AAElD;;GAEG;AACH,MAAM,MAAM,QAAQ,GAAG,KAAK,CAAC,UAAU,EAAE,MAAM,CAAC,CAAA;AAEhD
|
|
1
|
+
{"version":3,"file":"never_type.d.ts","sourceRoot":"","sources":["../../ts/never/never_type.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAA;AAGhD;;GAEG;AACH,MAAM,MAAM,SAAS,GAAG,KAAK,CAAC,WAAW,EAAE,MAAM,CAAC,CAAA;AAElD;;GAEG;AACH,MAAM,MAAM,QAAQ,GAAG,KAAK,CAAC,UAAU,EAAE,MAAM,CAAC,CAAA;AAEhD;;;;;;;;;GASG;AACH,MAAM,MAAM,SAAS,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,SAAS,IAAI,CAAC,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC,CAAC,GAAG,IAAI,GAAG,IAAI,CAAA;AAElG;;;;;;;;;GASG;AACH,MAAM,MAAM,YAAY,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,QAAQ,IAAI,SAAS,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;AAEjF;;;;;;;;GAQG;AACH,MAAM,MAAM,OAAO,CAAC,CAAC,EAAE,IAAI,GAAG,IAAI,EAAE,IAAI,GAAG,KAAK,IAAI,SAAS,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;AAE5E;;;;;;;GAOG;AACH,MAAM,MAAM,UAAU,CAAC,CAAC,EAAE,IAAI,GAAG,IAAI,EAAE,IAAI,GAAG,KAAK,IAAI,SAAS,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA"}
|
package/esm/nominal/brand.d.ts
CHANGED
|
@@ -1,15 +1,17 @@
|
|
|
1
1
|
import type { Widen } from '../utils/index.js';
|
|
2
|
-
import { typeSym, valueSym } from './
|
|
2
|
+
import { typeSym, valueSym } from './constants.js';
|
|
3
3
|
/**
|
|
4
4
|
* Create a "branded" version of a type.
|
|
5
5
|
* TypeScript won't allow implicit conversion to this type
|
|
6
6
|
*/
|
|
7
|
-
export type Brand<B extends string, T> = T extends
|
|
8
|
-
|
|
9
|
-
|
|
7
|
+
export type Brand<B extends string, T = never> = [T] extends [null] | [undefined] | [symbol] | [void] ? Branded<B, T> : Branded<B, T> & T;
|
|
8
|
+
/**
|
|
9
|
+
* A branded type of `B` with value of `T`.
|
|
10
|
+
*/
|
|
11
|
+
export interface Branded<B extends string, T> {
|
|
10
12
|
[typeSym]: B;
|
|
11
13
|
[valueSym]: T;
|
|
12
|
-
}
|
|
14
|
+
}
|
|
13
15
|
/**
|
|
14
16
|
* Creates a brand creator with the specified type.
|
|
15
17
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"brand.d.ts","sourceRoot":"","sources":["../../ts/nominal/brand.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AAC9C,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"brand.d.ts","sourceRoot":"","sources":["../../ts/nominal/brand.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AAC9C,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAElD;;;GAGG;AACH,MAAM,MAAM,KAAK,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,GAAG,KAAK,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,GAClG,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,GACb,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAA;AAEpB;;GAEG;AACH,MAAM,WAAW,OAAO,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC;IAC3C,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;IACZ,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA;CACb;AAED;;GAEG;AACH,wBAAgB,KAAK,CAAC,CAAC,SAAS,MAAM,EAAE,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,KAAK,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;AACvF;;GAEG;AACH,wBAAgB,KAAK,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,GAAG,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA"}
|
package/esm/nominal/brand.js
CHANGED
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
// By Drew Colthorp, <https://spin.atomicobject.com/2018/01/15/typescript-flexible-nominal-typing/#comment-604580>
|
|
2
2
|
// <https://gist.github.com/dcolthorp/aa21cf87d847ae9942106435bf47565d>
|
|
3
3
|
import { isType } from '../predicates/isType.js';
|
|
4
|
-
import { typeSym, valueSym } from './
|
|
5
|
-
export function brand(
|
|
4
|
+
import { typeSym, valueSym } from './constants.js';
|
|
5
|
+
export function brand(typeInput, subject) {
|
|
6
6
|
if (subject === undefined)
|
|
7
7
|
return function (subject) {
|
|
8
|
-
return brand(
|
|
8
|
+
return brand(typeInput, subject);
|
|
9
9
|
};
|
|
10
10
|
if (isType(subject, s => typeof s === 'object' && s !== null)) {
|
|
11
11
|
// if subject is not an object, the branding will exist only in type-level.
|
|
12
|
-
subject[typeSym] =
|
|
12
|
+
subject[typeSym] = typeInput;
|
|
13
13
|
}
|
|
14
14
|
return subject;
|
|
15
15
|
}
|
package/esm/nominal/brand.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"brand.js","sourceRoot":"","sources":["../../ts/nominal/brand.ts"],"names":[],"mappings":"AAAA,kHAAkH;AAClH,uEAAuE;AAEvE,OAAO,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAA;AAEhD,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"brand.js","sourceRoot":"","sources":["../../ts/nominal/brand.ts"],"names":[],"mappings":"AAAA,kHAAkH;AAClH,uEAAuE;AAEvE,OAAO,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAA;AAEhD,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AA0BlD,MAAM,UAAU,KAAK,CAAC,SAAiB,EAAE,OAAiB;IACzD,IAAI,OAAO,KAAK,SAAS;QACxB,OAAO,UAAa,OAAU;YAC7B,OAAO,KAAK,CAAC,SAAS,EAAE,OAAO,CAAC,CAAA;QACjC,CAAC,CAAA;IAEF,IAAI,MAAM,CAAwB,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,KAAK,IAAI,CAAC,EAAE;QACrF,2EAA2E;QAC3E,OAAO,CAAC,OAAO,CAAC,GAAG,SAAS,CAAA;KAC5B;IACD,OAAO,OAAO,CAAA;AACf,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../ts/nominal/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,OAAO,eAAiB,CAAA;AACrC,eAAO,MAAM,QAAQ,eAAkB,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../ts/nominal/constants.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,CAAA;AACrC,MAAM,CAAC,MAAM,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC,CAAA"}
|