@stryke/types 0.10.23 → 0.10.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.
Files changed (163) hide show
  1. package/dist/array.d.cts +122 -2
  2. package/dist/array.d.cts.map +1 -0
  3. package/dist/array.d.mts +122 -2
  4. package/dist/array.d.mts.map +1 -0
  5. package/dist/async.d.cts +111 -2
  6. package/dist/async.d.cts.map +1 -0
  7. package/dist/async.d.mts +111 -2
  8. package/dist/async.d.mts.map +1 -0
  9. package/dist/base.cjs +3 -1
  10. package/dist/base.d.cts +331 -2
  11. package/dist/base.d.cts.map +1 -0
  12. package/dist/base.d.mts +331 -2
  13. package/dist/base.d.mts.map +1 -0
  14. package/dist/base.mjs +3 -1
  15. package/dist/base.mjs.map +1 -0
  16. package/dist/configuration.d.cts +71 -2
  17. package/dist/configuration.d.cts.map +1 -0
  18. package/dist/configuration.d.mts +71 -2
  19. package/dist/configuration.d.mts.map +1 -0
  20. package/dist/file.d.cts +51 -2
  21. package/dist/file.d.cts.map +1 -0
  22. package/dist/file.d.mts +51 -2
  23. package/dist/file.d.mts.map +1 -0
  24. package/dist/form.d.cts +40 -2
  25. package/dist/form.d.cts.map +1 -0
  26. package/dist/form.d.mts +40 -2
  27. package/dist/form.d.mts.map +1 -0
  28. package/dist/index.cjs +1 -1
  29. package/dist/index.d.cts +19 -18
  30. package/dist/index.d.mts +19 -18
  31. package/dist/index.mjs +1 -1
  32. package/dist/json.d.cts +70 -2
  33. package/dist/json.d.cts.map +1 -0
  34. package/dist/json.d.mts +70 -2
  35. package/dist/json.d.mts.map +1 -0
  36. package/dist/logic.d.cts +124 -2
  37. package/dist/logic.d.cts.map +1 -0
  38. package/dist/logic.d.mts +124 -2
  39. package/dist/logic.d.mts.map +1 -0
  40. package/dist/messages.d.cts +21 -2
  41. package/dist/messages.d.cts.map +1 -0
  42. package/dist/messages.d.mts +21 -2
  43. package/dist/messages.d.mts.map +1 -0
  44. package/dist/navigator.d.cts +42 -2
  45. package/dist/navigator.d.cts.map +1 -0
  46. package/dist/navigator.d.mts +42 -2
  47. package/dist/navigator.d.mts.map +1 -0
  48. package/dist/number.d.cts +181 -2
  49. package/dist/number.d.cts.map +1 -0
  50. package/dist/number.d.mts +181 -2
  51. package/dist/number.d.mts.map +1 -0
  52. package/dist/object.d.cts +394 -2
  53. package/dist/object.d.cts.map +1 -0
  54. package/dist/object.d.mts +394 -2
  55. package/dist/object.d.mts.map +1 -0
  56. package/dist/package-json.d.cts +261 -2
  57. package/dist/package-json.d.cts.map +1 -0
  58. package/dist/package-json.d.mts +261 -2
  59. package/dist/package-json.d.mts.map +1 -0
  60. package/dist/package-manager.d.cts +6 -2
  61. package/dist/package-manager.d.cts.map +1 -0
  62. package/dist/package-manager.d.mts +6 -2
  63. package/dist/package-manager.d.mts.map +1 -0
  64. package/dist/string.d.cts +81 -2
  65. package/dist/string.d.cts.map +1 -0
  66. package/dist/string.d.mts +81 -2
  67. package/dist/string.d.mts.map +1 -0
  68. package/dist/system.d.cts +5 -2
  69. package/dist/system.d.cts.map +1 -0
  70. package/dist/system.d.mts +5 -2
  71. package/dist/system.d.mts.map +1 -0
  72. package/dist/tsconfig.d.cts +803 -2
  73. package/dist/tsconfig.d.cts.map +1 -0
  74. package/dist/tsconfig.d.mts +803 -2
  75. package/dist/tsconfig.d.mts.map +1 -0
  76. package/dist/user.d.cts +29 -2
  77. package/dist/user.d.cts.map +1 -0
  78. package/dist/user.d.mts +29 -2
  79. package/dist/user.d.mts.map +1 -0
  80. package/dist/utilities.d.cts +51 -2
  81. package/dist/utilities.d.cts.map +1 -0
  82. package/dist/utilities.d.mts +51 -2
  83. package/dist/utilities.d.mts.map +1 -0
  84. package/dist/validations.d.cts +21 -2
  85. package/dist/validations.d.cts.map +1 -0
  86. package/dist/validations.d.mts +21 -2
  87. package/dist/validations.d.mts.map +1 -0
  88. package/package.json +3 -3
  89. package/dist/array-DVtfX_TI.d.mts +0 -122
  90. package/dist/array-DVtfX_TI.d.mts.map +0 -1
  91. package/dist/array-DtIKbcDr.d.cts +0 -122
  92. package/dist/array-DtIKbcDr.d.cts.map +0 -1
  93. package/dist/async-BtPWg6IL.d.mts +0 -111
  94. package/dist/async-BtPWg6IL.d.mts.map +0 -1
  95. package/dist/async-eKWh-_sF.d.cts +0 -111
  96. package/dist/async-eKWh-_sF.d.cts.map +0 -1
  97. package/dist/base-CiIyKS-b.d.mts +0 -331
  98. package/dist/base-CiIyKS-b.d.mts.map +0 -1
  99. package/dist/base-Cpeh4C5c.cjs +0 -3
  100. package/dist/base-DmFPRVSE.mjs +0 -3
  101. package/dist/base-DmFPRVSE.mjs.map +0 -1
  102. package/dist/base-EF17pdAI.d.cts +0 -331
  103. package/dist/base-EF17pdAI.d.cts.map +0 -1
  104. package/dist/configuration-5Q2wg3Id.d.mts +0 -71
  105. package/dist/configuration-5Q2wg3Id.d.mts.map +0 -1
  106. package/dist/configuration-Dvz7q6dd.d.cts +0 -71
  107. package/dist/configuration-Dvz7q6dd.d.cts.map +0 -1
  108. package/dist/file-dM8RAMNC.d.cts +0 -51
  109. package/dist/file-dM8RAMNC.d.cts.map +0 -1
  110. package/dist/file-eWushyiM.d.mts +0 -51
  111. package/dist/file-eWushyiM.d.mts.map +0 -1
  112. package/dist/form-mTzpZCeA.d.cts +0 -40
  113. package/dist/form-mTzpZCeA.d.cts.map +0 -1
  114. package/dist/form-sNCVXIEk.d.mts +0 -40
  115. package/dist/form-sNCVXIEk.d.mts.map +0 -1
  116. package/dist/json-BlaU0Pbq.d.cts +0 -70
  117. package/dist/json-BlaU0Pbq.d.cts.map +0 -1
  118. package/dist/json-C3wqh2t3.d.mts +0 -70
  119. package/dist/json-C3wqh2t3.d.mts.map +0 -1
  120. package/dist/logic-BoEG5A3-.d.cts +0 -374
  121. package/dist/logic-BoEG5A3-.d.cts.map +0 -1
  122. package/dist/logic-h9Jrrpsk.d.mts +0 -374
  123. package/dist/logic-h9Jrrpsk.d.mts.map +0 -1
  124. package/dist/messages-Bxu_o13x.d.mts +0 -21
  125. package/dist/messages-Bxu_o13x.d.mts.map +0 -1
  126. package/dist/messages-PtLJRJeN.d.cts +0 -21
  127. package/dist/messages-PtLJRJeN.d.cts.map +0 -1
  128. package/dist/navigator-DLpMW73v.d.mts +0 -42
  129. package/dist/navigator-DLpMW73v.d.mts.map +0 -1
  130. package/dist/navigator-wsxMUGqK.d.cts +0 -42
  131. package/dist/navigator-wsxMUGqK.d.cts.map +0 -1
  132. package/dist/object-B3Rc0f80.d.mts +0 -392
  133. package/dist/object-B3Rc0f80.d.mts.map +0 -1
  134. package/dist/object-DyLgFijN.d.cts +0 -392
  135. package/dist/object-DyLgFijN.d.cts.map +0 -1
  136. package/dist/package-json-BYMmXu4B.d.mts +0 -261
  137. package/dist/package-json-BYMmXu4B.d.mts.map +0 -1
  138. package/dist/package-json-DMeUqEmW.d.cts +0 -261
  139. package/dist/package-json-DMeUqEmW.d.cts.map +0 -1
  140. package/dist/package-manager-PRcovqs-.d.mts +0 -6
  141. package/dist/package-manager-PRcovqs-.d.mts.map +0 -1
  142. package/dist/package-manager-tcG2TLVT.d.cts +0 -6
  143. package/dist/package-manager-tcG2TLVT.d.cts.map +0 -1
  144. package/dist/system-BxYi2_rE.d.mts +0 -5
  145. package/dist/system-BxYi2_rE.d.mts.map +0 -1
  146. package/dist/system-n1LPjzuJ.d.cts +0 -5
  147. package/dist/system-n1LPjzuJ.d.cts.map +0 -1
  148. package/dist/tsconfig-C6dWY2RO.d.cts +0 -803
  149. package/dist/tsconfig-C6dWY2RO.d.cts.map +0 -1
  150. package/dist/tsconfig-CUKA7cEN.d.mts +0 -803
  151. package/dist/tsconfig-CUKA7cEN.d.mts.map +0 -1
  152. package/dist/user-CkdO4wnf.d.mts +0 -29
  153. package/dist/user-CkdO4wnf.d.mts.map +0 -1
  154. package/dist/user-CovHR6Ne.d.cts +0 -29
  155. package/dist/user-CovHR6Ne.d.cts.map +0 -1
  156. package/dist/utilities-BVS-gcgS.d.mts +0 -51
  157. package/dist/utilities-BVS-gcgS.d.mts.map +0 -1
  158. package/dist/utilities-Jb4ggdM-.d.cts +0 -51
  159. package/dist/utilities-Jb4ggdM-.d.cts.map +0 -1
  160. package/dist/validations-C_7osVpS.d.mts +0 -21
  161. package/dist/validations-C_7osVpS.d.mts.map +0 -1
  162. package/dist/validations-CvwxY4RE.d.cts +0 -21
  163. package/dist/validations-CvwxY4RE.d.cts.map +0 -1
@@ -1,40 +0,0 @@
1
- import { c as NameValuePair } from "./utilities-BVS-gcgS.mjs";
2
-
3
- //#region src/form.d.ts
4
- type SelectOptionValue = string | number | boolean | null;
5
- /**
6
- * A utility type for specifying the type of an option for a Select or Radio form field.
7
- */
8
- interface SelectOption<TValue extends SelectOptionValue = SelectOptionValue, TName = string> extends NameValuePair<TValue, TName> {
9
- /**
10
- * The index of the select option
11
- */
12
- index: number;
13
- /**
14
- * The description of the select option
15
- */
16
- description?: string;
17
- /**
18
- * A short string describing the status of the select option
19
- */
20
- status?: string;
21
- /**
22
- * An optional icon to display in the select option
23
- */
24
- icon?: any;
25
- /**
26
- * An optional image to display in the select option
27
- */
28
- image?: any;
29
- /**
30
- * Is the option value valid for selection in the dropdown
31
- */
32
- disabled: boolean;
33
- /**
34
- * Sets or retrieves whether the option in the list box is the default item.
35
- */
36
- selected: boolean;
37
- }
38
- //#endregion
39
- export { SelectOptionValue as n, SelectOption as t };
40
- //# sourceMappingURL=form-sNCVXIEk.d.mts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"form-sNCVXIEk.d.mts","names":[],"sources":["../src/form.ts"],"sourcesContent":[],"mappings":";;;KAoBY,iBAAA;;AAAZ;AAKA;AACiB,UADA,YACA,CAAA,eAAA,iBAAA,GAAoB,iBAApB,EAAA,QAAA,MAAA,CAAA,SAEP,aAFO,CAEO,MAFP,EAEe,KAFf,CAAA,CAAA;EAAoB;;;EAE3B,KAAA,EAAA,MAAA;EAAa"}
@@ -1,70 +0,0 @@
1
- //#region src/json.d.ts
2
- type JsonObject = { [Key in string]: JsonValue } & { [Key in string]?: JsonValue | undefined };
3
- /**
4
- * Matches a JSON array.
5
- */
6
- type JsonArray = JsonValue[] | readonly JsonValue[];
7
- /**
8
- * Matches any valid JSON primitive value.
9
- */
10
- type JsonPrimitive = string | number | boolean | null;
11
- /**
12
- * Matches any valid JSON value.
13
- *
14
- * @see `Jsonify` if you need to transform a type to one that is assignable to `JsonValue`.
15
- */
16
- type JsonValue = JsonPrimitive | JsonObject | JsonArray;
17
- /**
18
- * Matches a JSON pointer's path segments.
19
- *
20
- * @remarks
21
- * These segments are used to navigate through the JSON object structure and point to a specific, referenced value.
22
- */
23
- type JsonPointerPath = (string | number)[];
24
- /**
25
- * Create a type with the keys of the given type changed to `string` type.
26
- *
27
- * Use-case: Changing interface values to strings in order to use them in a form model.
28
- *
29
- * @example
30
- * ```
31
- * import type {Stringified} from 'type-fest';
32
- *
33
- * type Car = {
34
- * model: string;
35
- * speed: number;
36
- * }
37
- *
38
- * const carForm: Stringified<Car> = {
39
- * model: 'Foo',
40
- * speed: '101'
41
- * };
42
- * ```
43
- */
44
- type Stringified<ObjectType> = { [KeyType in keyof ObjectType]: string };
45
- /**
46
- * Get keys of the given type as strings.
47
- *
48
- * Number keys are converted to strings.
49
- *
50
- * Use-cases:
51
- * - Get string keys from a type which may have number keys.
52
- * - Makes it possible to index using strings retrieved from template types.
53
- *
54
- * @example
55
- * ```
56
- * import type {StringKeyOf} from 'type-fest';
57
- *
58
- * type Foo = {
59
- * 1: number,
60
- * stringKey: string,
61
- * };
62
- *
63
- * type StringKeysOfFoo = StringKeyOf<Foo>;
64
- * //=> '1' | 'stringKey'
65
- * ```
66
- */
67
- type StringKeyOf<BaseType> = `${Extract<keyof BaseType, string | number>}`;
68
- //#endregion
69
- export { JsonValue as a, JsonPrimitive as i, JsonObject as n, StringKeyOf as o, JsonPointerPath as r, Stringified as s, JsonArray as t };
70
- //# sourceMappingURL=json-BlaU0Pbq.d.cts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"json-BlaU0Pbq.d.cts","names":[],"sources":["../src/json.ts"],"sourcesContent":[],"mappings":";KAkBY,UAAA,aAAA,MAAU,GAAsB,SAAA,EAO5C,GAAY,UAKA,MAAA,IAXQ,SAWK,GAAA,SAAA,EAOzB;;;;AAA8D,KAZlD,SAAA,GAAY,SAYsC,EAAA,GAAA,SAZf,SAYe,EAAA;AAQ9D;AAsBA;AAwBA;KA7DY,aAAA;;;;;;KAOA,SAAA,GAAY,gBAAgB,aAAa;;;;;;;KAQzC,eAAA;;;;;;;;;;;;;;;;;;;;;KAsBA,8CAA8C;;;;;;;;;;;;;;;;;;;;;;;KAwB9C,2BACP,cAAc"}
@@ -1,70 +0,0 @@
1
- //#region src/json.d.ts
2
- type JsonObject = { [Key in string]: JsonValue } & { [Key in string]?: JsonValue | undefined };
3
- /**
4
- * Matches a JSON array.
5
- */
6
- type JsonArray = JsonValue[] | readonly JsonValue[];
7
- /**
8
- * Matches any valid JSON primitive value.
9
- */
10
- type JsonPrimitive = string | number | boolean | null;
11
- /**
12
- * Matches any valid JSON value.
13
- *
14
- * @see `Jsonify` if you need to transform a type to one that is assignable to `JsonValue`.
15
- */
16
- type JsonValue = JsonPrimitive | JsonObject | JsonArray;
17
- /**
18
- * Matches a JSON pointer's path segments.
19
- *
20
- * @remarks
21
- * These segments are used to navigate through the JSON object structure and point to a specific, referenced value.
22
- */
23
- type JsonPointerPath = (string | number)[];
24
- /**
25
- * Create a type with the keys of the given type changed to `string` type.
26
- *
27
- * Use-case: Changing interface values to strings in order to use them in a form model.
28
- *
29
- * @example
30
- * ```
31
- * import type {Stringified} from 'type-fest';
32
- *
33
- * type Car = {
34
- * model: string;
35
- * speed: number;
36
- * }
37
- *
38
- * const carForm: Stringified<Car> = {
39
- * model: 'Foo',
40
- * speed: '101'
41
- * };
42
- * ```
43
- */
44
- type Stringified<ObjectType> = { [KeyType in keyof ObjectType]: string };
45
- /**
46
- * Get keys of the given type as strings.
47
- *
48
- * Number keys are converted to strings.
49
- *
50
- * Use-cases:
51
- * - Get string keys from a type which may have number keys.
52
- * - Makes it possible to index using strings retrieved from template types.
53
- *
54
- * @example
55
- * ```
56
- * import type {StringKeyOf} from 'type-fest';
57
- *
58
- * type Foo = {
59
- * 1: number,
60
- * stringKey: string,
61
- * };
62
- *
63
- * type StringKeysOfFoo = StringKeyOf<Foo>;
64
- * //=> '1' | 'stringKey'
65
- * ```
66
- */
67
- type StringKeyOf<BaseType> = `${Extract<keyof BaseType, string | number>}`;
68
- //#endregion
69
- export { JsonValue as a, JsonPrimitive as i, JsonObject as n, StringKeyOf as o, JsonPointerPath as r, Stringified as s, JsonArray as t };
70
- //# sourceMappingURL=json-C3wqh2t3.d.mts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"json-C3wqh2t3.d.mts","names":[],"sources":["../src/json.ts"],"sourcesContent":[],"mappings":";KAkBY,UAAA,aAAA,MAAU,GAAsB,SAAA,EAO5C,GAAY,UAKA,MAAA,IAXQ,SAWK,GAAA,SAAA,EAOzB;;;;AAA8D,KAZlD,SAAA,GAAY,SAYsC,EAAA,GAAA,SAZf,SAYe,EAAA;AAQ9D;AAsBA;AAwBA;KA7DY,aAAA;;;;;;KAOA,SAAA,GAAY,gBAAgB,aAAa;;;;;;;KAQzC,eAAA;;;;;;;;;;;;;;;;;;;;;KAsBA,8CAA8C;;;;;;;;;;;;;;;;;;;;;;;KAwB9C,2BACP,cAAc"}
@@ -1,374 +0,0 @@
1
- import { g as BuildTuple, z as IsEqual } from "./base-EF17pdAI.cjs";
2
-
3
- //#region src/number.d.ts
4
- type Numeric = number | bigint;
5
- type Zero = 0 | 0n;
6
- /**
7
- * Matches the hidden `Infinity` type.
8
- *
9
- * Please upvote [this issue](https://github.com/microsoft/TypeScript/issues/32277) if you want to have this type as a built-in in TypeScript.
10
- *
11
- * @see NegativeInfinity
12
- */
13
- type PositiveInfinity = 1e999;
14
- /**
15
- * Matches the hidden `-Infinity` type.
16
- *
17
- * Please upvote [this issue](https://github.com/microsoft/TypeScript/issues/32277) if you want to have this type as a built-in in TypeScript.
18
- *
19
- * @see PositiveInfinity
20
- */
21
- type NegativeInfinity = -1e999;
22
- /**
23
- * A finite `number`.
24
- * You can't pass a `bigint` as they are already guaranteed to be finite.
25
- *
26
- * Use-case: Validating and documenting parameters.
27
- *
28
- * Note: This can't detect `NaN`, please upvote [this issue](https://github.com/microsoft/TypeScript/issues/28682) if you want to have this type as a built-in in TypeScript.
29
- *
30
- * @example
31
- * ```
32
- * import type {Finite} from 'type-fest';
33
- *
34
- * declare function setScore<T extends number>(length: Finite<T>): void;
35
- * ```
36
- */
37
- type Finite<T extends number> = T extends PositiveInfinity | NegativeInfinity ? never : T;
38
- /**
39
- * A `number` that is an integer.
40
- *
41
- * Use-case: Validating and documenting parameters.
42
- *
43
- * @example
44
- * ```
45
- * type Integer = Integer<1>;
46
- * //=> 1
47
- *
48
- * type IntegerWithDecimal = Integer<1.0>;
49
- * //=> 1
50
- *
51
- * type NegativeInteger = Integer<-1>;
52
- * //=> -1
53
- *
54
- * type Float = Integer<1.5>;
55
- * //=> never
56
- *
57
- * // Supports non-decimal numbers
58
- *
59
- * type OctalInteger: Integer<0o10>;
60
- * //=> 0o10
61
- *
62
- * type BinaryInteger: Integer<0b10>;
63
- * //=> 0b10
64
- *
65
- * type HexadecimalInteger: Integer<0x10>;
66
- * //=> 0x10
67
- * ```
68
- *
69
- * @example
70
- * ```
71
- * import type {Integer} from 'type-fest';
72
- *
73
- * declare function setYear<T extends number>(length: Integer<T>): void;
74
- * ```
75
- *
76
- * @see NegativeInteger
77
- * @see NonNegativeInteger
78
- */
79
- type Integer<T> = T extends unknown ? IsInteger<T> extends true ? T : never : never;
80
- type IsInteger<T> = T extends bigint ? true : T extends number ? number extends T ? false : T extends PositiveInfinity | NegativeInfinity ? false : Not<IsFloat<T>> : false;
81
- type IsFloat<T> = T extends number ? `${T}` extends `${string | number | bigint | boolean | null | undefined}${number}.${infer Decimal extends number}` ? Decimal extends Zero ? false : true : false : false;
82
- /**
83
- * A `number` that is not an integer.
84
- *
85
- * Use-case: Validating and documenting parameters.
86
- *
87
- * It does not accept `Infinity`.
88
- *
89
- * @example
90
- * ```
91
- * import type {Float} from 'type-fest';
92
- *
93
- * declare function setPercentage<T extends number>(length: Float<T>): void;
94
- * ```
95
- *
96
- * @see Integer
97
- */
98
- type Float<T> = T extends unknown ? IsFloat<T> extends true ? T : never : never;
99
- /**
100
- * A negative (`-∞ < x < 0`) `number` that is not an integer.
101
- * Equivalent to `Negative<Float<T>>`.
102
- *
103
- * Use-case: Validating and documenting parameters.
104
- *
105
- * @see Negative
106
- * @see Float
107
- */
108
- type NegativeFloat<T extends number> = Negative<Float<T>>;
109
- /**
110
- * A negative `number`/`bigint` (`-∞ < x < 0`)
111
- *
112
- * Use-case: Validating and documenting parameters.
113
- *
114
- * @see NegativeInteger
115
- * @see NonNegative
116
- */
117
- type Negative<T extends Numeric> = T extends Zero ? never : `${T}` extends `-${string}` ? T : never;
118
- /**
119
- * A negative (`-∞ < x < 0`) `number` that is an integer.
120
- * Equivalent to `Negative<Integer<T>>`.
121
- *
122
- * You can't pass a `bigint` as they are already guaranteed to be integers, instead use `Negative<T>`.
123
- *
124
- * Use-case: Validating and documenting parameters.
125
- *
126
- * @see Negative
127
- * @see Integer
128
- */
129
- type NegativeInteger<T extends number> = Negative<Integer<T>>;
130
- /**
131
- * A non-negative `number`/`bigint` (`0 <= x < ∞`).
132
- *
133
- * Use-case: Validating and documenting parameters.
134
- *
135
- * @see NonNegativeInteger
136
- * @see Negative
137
- *
138
- * @example
139
- * ```
140
- * import type {NonNegative} from 'type-fest';
141
- *
142
- * declare function setLength<T extends number>(length: NonNegative<T>): void;
143
- * ```
144
- */
145
- type NonNegative<T extends Numeric> = T extends Zero ? T : Negative<T> extends never ? T : never;
146
- /**
147
- * A non-negative (`0 <= x < ∞`) `number` that is an integer.
148
- * Equivalent to `NonNegative<Integer<T>>`.
149
- *
150
- * You can't pass a `bigint` as they are already guaranteed to be integers, instead use `NonNegative<T>`.
151
- *
152
- * Use-case: Validating and documenting parameters.
153
- *
154
- * @see NonNegative
155
- * @see Integer
156
- *
157
- * @example
158
- * ```
159
- * import type {NonNegativeInteger} from 'type-fest';
160
- *
161
- * declare function setLength<T extends number>(length: NonNegativeInteger<T>): void;
162
- * ```
163
- */
164
- type NonNegativeInteger<T extends number> = NonNegative<Integer<T>>;
165
- /**
166
- * Returns a boolean for whether the given number is a negative number.
167
- *
168
- * @see Negative
169
- *
170
- * @example
171
- * ```
172
- * import type {IsNegative} from 'type-fest';
173
- *
174
- * type ShouldBeFalse = IsNegative<1>;
175
- * type ShouldBeTrue = IsNegative<-1>;
176
- * ```
177
- */
178
- type IsNegative<T extends Numeric> = T extends Negative<T> ? true : false;
179
- //#endregion
180
- //#region src/string.d.ts
181
- /**
182
- * Converts a numeric string to a number.
183
- *
184
- * @example
185
- * ```
186
- * type PositiveInt = StringToNumber<'1234'>;
187
- * //=> 1234
188
- *
189
- * type NegativeInt = StringToNumber<'-1234'>;
190
- * //=> -1234
191
- *
192
- * type PositiveFloat = StringToNumber<'1234.56'>;
193
- * //=> 1234.56
194
- *
195
- * type NegativeFloat = StringToNumber<'-1234.56'>;
196
- * //=> -1234.56
197
- *
198
- * type PositiveInfinity = StringToNumber<'Infinity'>;
199
- * //=> Infinity
200
- *
201
- * type NegativeInfinity = StringToNumber<'-Infinity'>;
202
- * //=> -Infinity
203
- * ```
204
- */
205
- type StringToNumber<S extends string> = S extends `${infer N extends number}` ? N : S extends "Infinity" ? PositiveInfinity : S extends "-Infinity" ? NegativeInfinity : never;
206
- /**
207
- * Returns a boolean for whether the given string `S` starts with the given string `SearchString`.
208
- *
209
- * @example
210
- * ```
211
- * StartsWith<'abcde', 'abc'>;
212
- * //=> true
213
- *
214
- * StartsWith<'abcde', 'bc'>;
215
- * //=> false
216
- *
217
- * StartsWith<string, 'bc'>;
218
- * //=> never
219
- *
220
- * StartsWith<'abcde', string>;
221
- * //=> never
222
- * ```
223
- */
224
- type StartsWith<S extends string, SearchString extends string> = string extends S | SearchString ? never : S extends `${SearchString}${string | number | bigint | boolean | null | undefined}` ? true : false;
225
- /**
226
- * Returns the length of the given string.
227
- *
228
- * @example
229
- * ```
230
- * StringLength<'abcde'>;
231
- * //=> 5
232
- *
233
- * StringLength<string>;
234
- * //=> never
235
- * ```
236
- */
237
- type StringLength<S extends string> = string extends S ? never : StringToArray<S>["length"];
238
- /**
239
- * Returns an array of the characters of the string.
240
- *
241
- * @example
242
- * ```
243
- * StringToArray<'abcde'>;
244
- * //=> ['a', 'b', 'c', 'd', 'e']
245
- *
246
- * StringToArray<string>;
247
- * //=> never
248
- * ```
249
- */
250
- type StringToArray<S extends string, Result extends string[] = []> = string extends S ? never : S extends `${infer F}${infer R}` ? StringToArray<R, [...Result, F]> : Result;
251
- type UpperCaseCharacters = "A" | "B" | "C" | "D" | "E" | "F" | "G" | "H" | "I" | "J" | "K" | "L" | "M" | "N" | "O" | "P" | "Q" | "R" | "S" | "T" | "U" | "V" | "W" | "X" | "Y" | "Z";
252
- type StringDigit = "0" | "1" | "2" | "3" | "4" | "5" | "6" | "7" | "8" | "9";
253
- type Whitespace = "\u{9}" | "\u{A}" | "\u{B}" | "\u{C}" | "\u{D}" | "\u{20}" | "\u{85}" | "\u{A0}" | "\u{1680}" | "\u{2000}" | "\u{2001}" | "\u{2002}" | "\u{2003}" | "\u{2004}" | "\u{2005}" | "\u{2006}" | "\u{2007}" | "\u{2008}" | "\u{2009}" | "\u{200A}" | "\u{2028}" | "\u{2029}" | "\u{202F}" | "\u{205F}" | "\u{3000}" | "\u{FEFF}";
254
- type WordSeparators = "-" | "_" | Whitespace;
255
- //#endregion
256
- //#region src/logic.d.ts
257
- /**
258
- * Returns a boolean for whether A is false.
259
- *
260
- * @example
261
- * ```
262
- * Not<true>;
263
- * //=> false
264
- *
265
- * Not<false>;
266
- * //=> true
267
- * ```
268
- */
269
- type Not<A extends boolean> = A extends true ? false : A extends false ? true : never;
270
- /**
271
- * Returns a boolean for whether the given `boolean` is not `false`.
272
- */
273
- type IsNotFalse<T extends boolean> = [T] extends [false] ? false : true;
274
- type Or<A extends boolean, B extends boolean> = [A, B][number] extends false ? false : true extends [IsEqual<A, true>, IsEqual<B, true>][number] ? true : never;
275
- type And<A extends boolean, B extends boolean> = [A, B][number] extends true ? true : true extends [IsEqual<A, false>, IsEqual<B, false>][number] ? false : never;
276
- /**
277
- * Returns a boolean for whether `A` represents a number greater than `B`, where `A` and `B` are both positive numeric characters.
278
- *
279
- * @example
280
- * ```
281
- * PositiveNumericCharacterGt<'5', '1'>;
282
- * //=> true
283
- *
284
- * PositiveNumericCharacterGt<'1', '1'>;
285
- * //=> false
286
- * ```
287
- */
288
- type PositiveNumericCharacterGt<A extends string, B extends string> = NumericString extends `${infer HeadA}${A}${infer _TailA}` ? NumericString extends `${infer HeadB}${B}${infer _TailB}` ? HeadA extends `${HeadB}${infer _}${infer __}` ? true : false : never : never;
289
- /**
290
- * Returns a boolean for whether `A` represents a number greater than `B`, where `A` and `B` are both numeric strings and have the same length.
291
- *
292
- * @example
293
- * ```
294
- * SameLengthPositiveNumericStringGt<'50', '10'>;
295
- * //=> true
296
- *
297
- * SameLengthPositiveNumericStringGt<'10', '10'>;
298
- * //=> false
299
- * ```
300
- */
301
- type SameLengthPositiveNumericStringGt<A extends string, B extends string> = A extends `${infer FirstA}${infer RestA}` ? B extends `${infer FirstB}${infer RestB}` ? FirstA extends FirstB ? SameLengthPositiveNumericStringGt<RestA, RestB> : PositiveNumericCharacterGt<FirstA, FirstB> : never : false;
302
- type NumericString = "0123456789";
303
- /**
304
- * Returns a boolean for whether `A` is greater than `B`, where `A` and `B` are both positive numeric strings.
305
- *
306
- * @example
307
- * ```
308
- * PositiveNumericStringGt<'500', '1'>;
309
- * //=> true
310
- *
311
- * PositiveNumericStringGt<'1', '1'>;
312
- * //=> false
313
- *
314
- * PositiveNumericStringGt<'1', '500'>;
315
- * //=> false
316
- * ```
317
- */
318
- type PositiveNumericStringGt<A extends string, B extends string> = A extends B ? false : [BuildTuple<StringLength<A>, 0>, BuildTuple<StringLength<B>, 0>] extends infer R extends [readonly unknown[], readonly unknown[]] ? R[0] extends [...R[1], ...infer Remain extends readonly unknown[]] ? 0 extends Remain["length"] ? SameLengthPositiveNumericStringGt<A, B> : true : false : never;
319
- type LessThan<A extends number, B extends number> = number extends A | B ? never : GreaterThanOrEqual<A, B> extends true ? false : true;
320
- type GreaterThan<A extends number, B extends number> = number extends A | B ? never : [IsEqual<A, PositiveInfinity>, IsEqual<A, NegativeInfinity>, IsEqual<B, PositiveInfinity>, IsEqual<B, NegativeInfinity>] extends infer R extends [boolean, boolean, boolean, boolean] ? Or<And<IsEqual<R[0], true>, IsEqual<R[2], false>>, And<IsEqual<R[3], true>, IsEqual<R[1], false>>> extends true ? true : Or<And<IsEqual<R[1], true>, IsEqual<R[3], false>>, And<IsEqual<R[2], true>, IsEqual<R[0], false>>> extends true ? false : true extends R[number] ? false : [IsNegative<A>, IsNegative<B>] extends infer R extends [boolean, boolean] ? [true, false] extends R ? false : [false, true] extends R ? true : [false, false] extends R ? PositiveNumericStringGt<`${A}`, `${B}`> : PositiveNumericStringGt<`${NumberAbsolute<B>}`, `${NumberAbsolute<A>}`> : never : never;
321
- type GreaterThanOrEqual<A extends number, B extends number> = number extends A | B ? never : A extends B ? true : GreaterThan<A, B>;
322
- /**
323
- * Returns the minimum value from a tuple of integers.
324
- *
325
- * Note:
326
- * - Float numbers are not supported.
327
- *
328
- * @example
329
- * ```
330
- * ArrayMin<[1, 2, 5, 3]>;
331
- * //=> 1
332
- *
333
- * ArrayMin<[1, 2, 5, 3, -5]>;
334
- * //=> -5
335
- * ```
336
- */
337
- type ArrayMin<A extends number[], Result extends number = PositiveInfinity> = number extends A[number] ? never : A extends [infer F extends number, ...infer R extends number[]] ? LessThan<F, Result> extends true ? ArrayMin<R, F> : ArrayMin<R, Result> : Result;
338
- /**
339
- * Returns the maximum value from a tuple of integers.
340
- *
341
- * Note:
342
- * - Float numbers are not supported.
343
- *
344
- * @example
345
- * ```
346
- * ArrayMax<[1, 2, 5, 3]>;
347
- * //=> 5
348
- *
349
- * ArrayMax<[1, 2, 5, 3, 99, -1]>;
350
- * //=> 99
351
- * ```
352
- */
353
- type ArrayMax<A extends number[], Result extends number = NegativeInfinity> = number extends A[number] ? never : A extends [infer F extends number, ...infer R extends number[]] ? GreaterThan<F, Result> extends true ? ArrayMax<R, F> : ArrayMax<R, Result> : Result;
354
- /**
355
- * Returns the absolute value of a given value.
356
- *
357
- * @example
358
- * ```
359
- * NumberAbsolute<-1>;
360
- * //=> 1
361
- *
362
- * NumberAbsolute<1>;
363
- * //=> 1
364
- *
365
- * NumberAbsolute<NegativeInfinity>
366
- * //=> PositiveInfinity
367
- * ```
368
- */
369
- type NumberAbsolute<N extends number> = `${N}` extends `-${infer StringPositiveN}` ? StringToNumber<StringPositiveN> : N;
370
- type Subtract<A extends number, B extends number> = number extends A | B ? number : [IsEqual<A, PositiveInfinity>, IsEqual<A, NegativeInfinity>, IsEqual<B, PositiveInfinity>, IsEqual<B, NegativeInfinity>] extends infer R extends [boolean, boolean, boolean, boolean] ? Or<And<IsEqual<R[0], true>, IsEqual<R[2], false>>, And<IsEqual<R[3], true>, IsEqual<R[1], false>>> extends true ? PositiveInfinity : Or<And<IsEqual<R[1], true>, IsEqual<R[3], false>>, And<IsEqual<R[2], true>, IsEqual<R[0], false>>> extends true ? NegativeInfinity : true extends R[number] ? number : [IsNegative<A>, IsNegative<B>] extends infer R ? [false, false] extends R ? BuildTuple<A> extends infer _R ? R extends [...BuildTuple<B>, ...infer R] ? R["length"] : number : never : LessThan<A, B> extends true ? number : [false, true] extends R ? Sum<A, NumberAbsolute<B>> : Subtract<NumberAbsolute<B>, NumberAbsolute<A>> : never : never;
371
- type Sum<A extends number, B extends number> = number extends A | B ? number : [IsEqual<A, PositiveInfinity>, IsEqual<A, NegativeInfinity>, IsEqual<B, PositiveInfinity>, IsEqual<B, NegativeInfinity>] extends infer R extends [boolean, boolean, boolean, boolean] ? Or<And<IsEqual<R[0], true>, IsEqual<R[3], false>>, And<IsEqual<R[2], true>, IsEqual<R[1], false>>> extends true ? PositiveInfinity : Or<And<IsEqual<R[1], true>, IsEqual<R[2], false>>, And<IsEqual<R[3], true>, IsEqual<R[0], false>>> extends true ? NegativeInfinity : true extends R[number] ? number : ([IsNegative<A>, IsNegative<B>] extends infer R ? [false, false] extends R ? [...BuildTuple<A>, ...BuildTuple<B>]["length"] : [true, true] extends R ? number : ArrayMax<[NumberAbsolute<A>, NumberAbsolute<B>]> extends infer Max_ ? ArrayMin<[NumberAbsolute<A>, NumberAbsolute<B>]> extends infer Min_ extends number ? Max_ extends A | B ? Subtract<Max_, Min_> : number : never : never : never) & number : never;
372
- //#endregion
373
- export { Negative as A, WordSeparators as C, IsFloat as D, Integer as E, NonNegativeInteger as F, Numeric as I, PositiveInfinity as L, NegativeInfinity as M, NegativeInteger as N, IsInteger as O, NonNegative as P, Zero as R, Whitespace as S, Float as T, StringDigit as _, GreaterThanOrEqual as a, StringToNumber as b, Not as c, PositiveNumericCharacterGt as d, PositiveNumericStringGt as f, StartsWith as g, Sum as h, GreaterThan as i, NegativeFloat as j, IsNegative as k, NumberAbsolute as l, Subtract as m, ArrayMax as n, IsNotFalse as o, SameLengthPositiveNumericStringGt as p, ArrayMin as r, LessThan as s, And as t, Or as u, StringLength as v, Finite as w, UpperCaseCharacters as x, StringToArray as y };
374
- //# sourceMappingURL=logic-BoEG5A3-.d.cts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"logic-BoEG5A3-.d.cts","names":[],"sources":["../src/number.ts","../src/string.ts","../src/logic.ts"],"sourcesContent":[],"mappings":"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"}