@sorrell/utilities 1.2.8 → 1.2.11

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 (96) hide show
  1. package/Distribution/PackageExports.Generated.json +30 -0
  2. package/Distribution/Types/FileSystem/FileSystem.d.cts +16 -0
  3. package/Distribution/Types/FileSystem/FileSystem.d.cts.map +1 -1
  4. package/Distribution/Types/FileSystem/FileSystem.d.mts +16 -0
  5. package/Distribution/Types/FileSystem/FileSystem.d.mts.map +1 -1
  6. package/Distribution/Types/FileSystem/FileSystem.d.ts +16 -0
  7. package/Distribution/Types/FileSystem/FileSystem.d.ts.map +1 -1
  8. package/Distribution/Types/Functional/Functional.d.cts +7 -1
  9. package/Distribution/Types/Functional/Functional.d.cts.map +1 -1
  10. package/Distribution/Types/Functional/Functional.d.mts +7 -1
  11. package/Distribution/Types/Functional/Functional.d.mts.map +1 -1
  12. package/Distribution/Types/Functional/Functional.d.ts +7 -1
  13. package/Distribution/Types/Functional/Functional.d.ts.map +1 -1
  14. package/Distribution/Types/HigherKind/HigherKind.Internal.Types.d.cts +30 -0
  15. package/Distribution/Types/HigherKind/HigherKind.Internal.Types.d.cts.map +10 -0
  16. package/Distribution/Types/HigherKind/HigherKind.Internal.Types.d.mts +30 -0
  17. package/Distribution/Types/HigherKind/HigherKind.Internal.Types.d.mts.map +10 -0
  18. package/Distribution/Types/HigherKind/HigherKind.Internal.Types.d.ts +30 -0
  19. package/Distribution/Types/HigherKind/HigherKind.Internal.Types.d.ts.map +1 -0
  20. package/Distribution/Types/HigherKind/HigherKind.Registrar.Types.d.cts +31 -0
  21. package/Distribution/Types/HigherKind/HigherKind.Registrar.Types.d.cts.map +10 -0
  22. package/Distribution/Types/HigherKind/HigherKind.Registrar.Types.d.mts +31 -0
  23. package/Distribution/Types/HigherKind/HigherKind.Registrar.Types.d.mts.map +10 -0
  24. package/Distribution/Types/HigherKind/HigherKind.Registrar.Types.d.ts +31 -0
  25. package/Distribution/Types/HigherKind/HigherKind.Registrar.Types.d.ts.map +1 -0
  26. package/Distribution/Types/HigherKind/HigherKind.Types.d.cts +85 -0
  27. package/Distribution/Types/HigherKind/HigherKind.Types.d.cts.map +10 -0
  28. package/Distribution/Types/HigherKind/HigherKind.Types.d.mts +85 -0
  29. package/Distribution/Types/HigherKind/HigherKind.Types.d.mts.map +10 -0
  30. package/Distribution/Types/HigherKind/HigherKind.Types.d.ts +85 -0
  31. package/Distribution/Types/HigherKind/HigherKind.Types.d.ts.map +1 -0
  32. package/Distribution/Types/HigherKind/index.d.cts +8 -0
  33. package/Distribution/Types/HigherKind/index.d.cts.map +10 -0
  34. package/Distribution/Types/HigherKind/index.d.mts +8 -0
  35. package/Distribution/Types/HigherKind/index.d.mts.map +10 -0
  36. package/Distribution/Types/HigherKind/index.d.ts +8 -0
  37. package/Distribution/Types/HigherKind/index.d.ts.map +1 -0
  38. package/Distribution/Types/Miscellaneous/Utility.Types.d.cts +12 -26
  39. package/Distribution/Types/Miscellaneous/Utility.Types.d.cts.map +1 -1
  40. package/Distribution/Types/Miscellaneous/Utility.Types.d.mts +12 -26
  41. package/Distribution/Types/Miscellaneous/Utility.Types.d.mts.map +1 -1
  42. package/Distribution/Types/Miscellaneous/Utility.Types.d.ts +12 -26
  43. package/Distribution/Types/Miscellaneous/Utility.Types.d.ts.map +1 -1
  44. package/Distribution/Types/String/String.d.cts +55 -10
  45. package/Distribution/Types/String/String.d.cts.map +1 -1
  46. package/Distribution/Types/String/String.d.mts +55 -10
  47. package/Distribution/Types/String/String.d.mts.map +1 -1
  48. package/Distribution/Types/String/String.d.ts +55 -10
  49. package/Distribution/Types/String/String.d.ts.map +1 -1
  50. package/Distribution/Types/TsConfig/TsConfig.Types.d.cts +32 -0
  51. package/Distribution/Types/TsConfig/TsConfig.Types.d.cts.map +10 -0
  52. package/Distribution/Types/TsConfig/TsConfig.Types.d.mts +32 -0
  53. package/Distribution/Types/TsConfig/TsConfig.Types.d.mts.map +10 -0
  54. package/Distribution/Types/TsConfig/TsConfig.Types.d.ts +32 -0
  55. package/Distribution/Types/TsConfig/TsConfig.Types.d.ts.map +1 -0
  56. package/Distribution/Types/TsConfig/index.d.cts +8 -0
  57. package/Distribution/Types/TsConfig/index.d.cts.map +10 -0
  58. package/Distribution/Types/TsConfig/index.d.mts +8 -0
  59. package/Distribution/Types/TsConfig/index.d.mts.map +10 -0
  60. package/Distribution/Types/TsConfig/index.d.ts +8 -0
  61. package/Distribution/Types/TsConfig/index.d.ts.map +1 -0
  62. package/Distribution/Types/index.d.cts +1 -0
  63. package/Distribution/Types/index.d.cts.map +1 -1
  64. package/Distribution/Types/index.d.mts +1 -0
  65. package/Distribution/Types/index.d.mts.map +1 -1
  66. package/Distribution/Types/index.d.ts +1 -0
  67. package/Distribution/Types/index.d.ts.map +1 -1
  68. package/Distribution/async.cjs.map +2 -2
  69. package/Distribution/async.js.map +2 -2
  70. package/Distribution/fs.cjs +94 -4
  71. package/Distribution/fs.cjs.map +3 -3
  72. package/Distribution/fs.js +94 -4
  73. package/Distribution/fs.js.map +3 -3
  74. package/Distribution/functional.cjs +2 -2
  75. package/Distribution/functional.cjs.map +2 -2
  76. package/Distribution/functional.js +2 -2
  77. package/Distribution/functional.js.map +2 -2
  78. package/Distribution/higher-kind.cjs +31 -0
  79. package/Distribution/higher-kind.cjs.map +7 -0
  80. package/Distribution/higher-kind.js +13 -0
  81. package/Distribution/higher-kind.js.map +7 -0
  82. package/Distribution/index.cjs +137 -18
  83. package/Distribution/index.cjs.map +4 -4
  84. package/Distribution/index.js +144 -25
  85. package/Distribution/index.js.map +4 -4
  86. package/Distribution/misc.cjs.map +2 -2
  87. package/Distribution/misc.js.map +2 -2
  88. package/Distribution/string.cjs +70 -0
  89. package/Distribution/string.cjs.map +7 -0
  90. package/Distribution/string.js +47 -0
  91. package/Distribution/string.js.map +7 -0
  92. package/Distribution/tsconfig.cjs +31 -0
  93. package/Distribution/tsconfig.cjs.map +7 -0
  94. package/Distribution/tsconfig.js +13 -0
  95. package/Distribution/tsconfig.js.map +7 -0
  96. package/package.json +45 -7
@@ -0,0 +1,85 @@
1
+ /**
2
+ * @file HigherKind.Types.ts
3
+ * @author Gage Sorrell <gage@sorrell.sh>
4
+ * @copyright (c) 2026 Gage Sorrell
5
+ * @license MIT
6
+ */
7
+ import type * as Registrar from "./HigherKind.Registrar.Types.mjs";
8
+ import type { Keyof } from "./HigherKind.Internal.Types.mjs";
9
+ /**
10
+ * Apply a higher-kind type of one type parameter.
11
+ *
12
+ * @template ParameterOneType - The first type parameter.
13
+ */
14
+ export type OneParam<HigherKindType extends Keyof.OneParam, ParameterOneType> = Registrar.OneParam<ParameterOneType>[HigherKindType];
15
+ /**
16
+ * Apply a higher-kind type of two type parameters.
17
+ *
18
+ * @template ParameterOneType - The first type parameter.
19
+ * @template ParameterTwoType - The second type parameter.
20
+ */
21
+ export type TwoParams<HigherKindType extends Keyof.TwoParams, ParameterOneType, ParameterTwoType> = Registrar.TwoParams<ParameterOneType, ParameterTwoType>[HigherKindType];
22
+ /**
23
+ * Apply a higher-kind type of three type parameters.
24
+ *
25
+ * @template ParameterOneType - The first type parameter.
26
+ * @template ParameterTwoType - The second type parameter.
27
+ * @template ParameterThreeType - The third type parameter.
28
+ */
29
+ export type ThreeParams<HigherKindType extends Keyof.ThreeParams, ParameterOneType, ParameterTwoType, ParameterThreeType> = Registrar.ThreeParams<ParameterOneType, ParameterTwoType, ParameterThreeType>[HigherKindType];
30
+ /**
31
+ * Apply a higher-kind type of four type parameters.
32
+ *
33
+ * @template ParameterOneType - The first type parameter.
34
+ * @template ParameterTwoType - The second type parameter.
35
+ * @template ParameterThreeType - The third type parameter.
36
+ * @template ParameterFourType - The fourth type parameter.
37
+ */
38
+ export type FourParams<HigherKindType extends Keyof.FourParams, ParameterOneType, ParameterTwoType, ParameterThreeType, ParameterFourType> = Registrar.FourParams<ParameterOneType, ParameterTwoType, ParameterThreeType, ParameterFourType>[HigherKindType];
39
+ /**
40
+ * Apply a higher-kind type of five type parameters.
41
+ *
42
+ * @template ParameterOneType - The first type parameter.
43
+ * @template ParameterTwoType - The second type parameter.
44
+ * @template ParameterThreeType - The third type parameter.
45
+ * @template ParameterFourType - The fourth type parameter.
46
+ * @template ParameterFiveType - The fifth type parameter.
47
+ */
48
+ export type FiveParams<HigherKindType extends Keyof.FiveParams, ParameterOneType, ParameterTwoType, ParameterThreeType, ParameterFourType, ParameterFiveType> = Registrar.FiveParams<ParameterOneType, ParameterTwoType, ParameterThreeType, ParameterFourType, ParameterFiveType>[HigherKindType];
49
+ /**
50
+ * Apply a higher-kind type of six type parameters.
51
+ *
52
+ * @template ParameterOneType - The first type parameter.
53
+ * @template ParameterTwoType - The second type parameter.
54
+ * @template ParameterThreeType - The third type parameter.
55
+ * @template ParameterFourType - The fourth type parameter.
56
+ * @template ParameterFiveType - The fifth type parameter.
57
+ * @template ParameterSixType - The sixth type parameter.
58
+ */
59
+ export type SixParams<HigherKindType extends Keyof.SixParams, ParameterOneType, ParameterTwoType, ParameterThreeType, ParameterFourType, ParameterFiveType, ParameterSixType> = Registrar.SixParams<ParameterOneType, ParameterTwoType, ParameterThreeType, ParameterFourType, ParameterFiveType, ParameterSixType>[HigherKindType];
60
+ /**
61
+ * Apply a higher-kind type of seven type parameters.
62
+ *
63
+ * @template ParameterOneType - The first type parameter.
64
+ * @template ParameterTwoType - The second type parameter.
65
+ * @template ParameterThreeType - The third type parameter.
66
+ * @template ParameterFourType - The fourth type parameter.
67
+ * @template ParameterFiveType - The fifth type parameter.
68
+ * @template ParameterSixType - The sixth type parameter.
69
+ * @template ParameterSevenType - The seventh type parameter.
70
+ */
71
+ export type SevenParams<HigherKindType extends Keyof.SevenParams, ParameterOneType, ParameterTwoType, ParameterThreeType, ParameterFourType, ParameterFiveType, ParameterSixType, ParameterSevenType> = Registrar.SevenParams<ParameterOneType, ParameterTwoType, ParameterThreeType, ParameterFourType, ParameterFiveType, ParameterSixType, ParameterSevenType>[HigherKindType];
72
+ /**
73
+ * Apply a higher-kind type of eight type parameters.
74
+ *
75
+ * @template ParameterOneType - The first type parameter.
76
+ * @template ParameterTwoType - The second type parameter.
77
+ * @template ParameterThreeType - The third type parameter.
78
+ * @template ParameterFourType - The fourth type parameter.
79
+ * @template ParameterFiveType - The fifth type parameter.
80
+ * @template ParameterSixType - The sixth type parameter.
81
+ * @template ParameterSevenType - The seventh type parameter.
82
+ * @template ParameterEightType - The eighth type parameter.
83
+ */
84
+ export type EightParams<HigherKindType extends Keyof.EightParams, ParameterOneType, ParameterTwoType, ParameterThreeType, ParameterFourType, ParameterFiveType, ParameterSixType, ParameterSevenType, ParameterEightType> = Registrar.EightParams<ParameterOneType, ParameterTwoType, ParameterThreeType, ParameterFourType, ParameterFiveType, ParameterSixType, ParameterSevenType, ParameterEightType>[HigherKindType];
85
+ //# sourceMappingURL=HigherKind.Types.d.mts.map
@@ -0,0 +1,10 @@
1
+ {
2
+ "version": 3,
3
+ "file": "HigherKind.Types.d.mts",
4
+ "sourceRoot": "",
5
+ "sources": [
6
+ "../../../Source/HigherKind/HigherKind.Types.ts"
7
+ ],
8
+ "names": [],
9
+ "mappings": "AAAA;;;;;GAKG;AAEH,OAAO,KAAK,KAAK,SAAS,MAAM,iCAAiC,CAAC;AAClE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,gCAAgC,CAAC;AAE5D;;;;GAIG;AACH,MAAM,MAAM,QAAQ,CAChB,cAAc,SAAS,KAAK,CAAC,QAAQ,EACrC,gBAAgB,IAChB,SAAS,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC,cAAc,CAAC,CAAC;AAEzD;;;;;GAKG;AACH,MAAM,MAAM,SAAS,CACjB,cAAc,SAAS,KAAK,CAAC,SAAS,EACtC,gBAAgB,EAChB,gBAAgB,IAEhB,SAAS,CAAC,SAAS,CACf,gBAAgB,EAChB,gBAAgB,CACnB,CAAC,cAAc,CAAC,CAAC;AAEtB;;;;;;GAMG;AACH,MAAM,MAAM,WAAW,CACnB,cAAc,SAAS,KAAK,CAAC,WAAW,EACxC,gBAAgB,EAChB,gBAAgB,EAChB,kBAAkB,IAElB,SAAS,CAAC,WAAW,CACjB,gBAAgB,EAChB,gBAAgB,EAChB,kBAAkB,CACrB,CAAC,cAAc,CAAC,CAAC;AAEtB;;;;;;;GAOG;AACH,MAAM,MAAM,UAAU,CAClB,cAAc,SAAS,KAAK,CAAC,UAAU,EACvC,gBAAgB,EAChB,gBAAgB,EAChB,kBAAkB,EAClB,iBAAiB,IAEjB,SAAS,CAAC,UAAU,CAChB,gBAAgB,EAChB,gBAAgB,EAChB,kBAAkB,EAClB,iBAAiB,CACpB,CAAC,cAAc,CAAC,CAAC;AAEtB;;;;;;;;GAQG;AACH,MAAM,MAAM,UAAU,CAClB,cAAc,SAAS,KAAK,CAAC,UAAU,EACvC,gBAAgB,EAChB,gBAAgB,EAChB,kBAAkB,EAClB,iBAAiB,EACjB,iBAAiB,IAEjB,SAAS,CAAC,UAAU,CAChB,gBAAgB,EAChB,gBAAgB,EAChB,kBAAkB,EAClB,iBAAiB,EACjB,iBAAiB,CACpB,CAAC,cAAc,CAAC,CAAC;AAEtB;;;;;;;;;GASG;AACH,MAAM,MAAM,SAAS,CACjB,cAAc,SAAS,KAAK,CAAC,SAAS,EACtC,gBAAgB,EAChB,gBAAgB,EAChB,kBAAkB,EAClB,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,IAEhB,SAAS,CAAC,SAAS,CACf,gBAAgB,EAChB,gBAAgB,EAChB,kBAAkB,EAClB,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,CACnB,CAAC,cAAc,CAAC,CAAC;AAEtB;;;;;;;;;;GAUG;AACH,MAAM,MAAM,WAAW,CACnB,cAAc,SAAS,KAAK,CAAC,WAAW,EACxC,gBAAgB,EAChB,gBAAgB,EAChB,kBAAkB,EAClB,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,EAChB,kBAAkB,IAElB,SAAS,CAAC,WAAW,CACjB,gBAAgB,EAChB,gBAAgB,EAChB,kBAAkB,EAClB,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,EAChB,kBAAkB,CACrB,CAAC,cAAc,CAAC,CAAC;AAEtB;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,WAAW,CACnB,cAAc,SAAS,KAAK,CAAC,WAAW,EACxC,gBAAgB,EAChB,gBAAgB,EAChB,kBAAkB,EAClB,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,EAChB,kBAAkB,EAClB,kBAAkB,IAElB,SAAS,CAAC,WAAW,CACjB,gBAAgB,EAChB,gBAAgB,EAChB,kBAAkB,EAClB,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,EAChB,kBAAkB,EAClB,kBAAkB,CACrB,CAAC,cAAc,CAAC,CAAC"
10
+ }
@@ -0,0 +1,85 @@
1
+ /**
2
+ * @file HigherKind.Types.ts
3
+ * @author Gage Sorrell <gage@sorrell.sh>
4
+ * @copyright (c) 2026 Gage Sorrell
5
+ * @license MIT
6
+ */
7
+ import type * as Registrar from "./HigherKind.Registrar.Types.ts";
8
+ import type { Keyof } from "./HigherKind.Internal.Types.ts";
9
+ /**
10
+ * Apply a higher-kind type of one type parameter.
11
+ *
12
+ * @template ParameterOneType - The first type parameter.
13
+ */
14
+ export type OneParam<HigherKindType extends Keyof.OneParam, ParameterOneType> = Registrar.OneParam<ParameterOneType>[HigherKindType];
15
+ /**
16
+ * Apply a higher-kind type of two type parameters.
17
+ *
18
+ * @template ParameterOneType - The first type parameter.
19
+ * @template ParameterTwoType - The second type parameter.
20
+ */
21
+ export type TwoParams<HigherKindType extends Keyof.TwoParams, ParameterOneType, ParameterTwoType> = Registrar.TwoParams<ParameterOneType, ParameterTwoType>[HigherKindType];
22
+ /**
23
+ * Apply a higher-kind type of three type parameters.
24
+ *
25
+ * @template ParameterOneType - The first type parameter.
26
+ * @template ParameterTwoType - The second type parameter.
27
+ * @template ParameterThreeType - The third type parameter.
28
+ */
29
+ export type ThreeParams<HigherKindType extends Keyof.ThreeParams, ParameterOneType, ParameterTwoType, ParameterThreeType> = Registrar.ThreeParams<ParameterOneType, ParameterTwoType, ParameterThreeType>[HigherKindType];
30
+ /**
31
+ * Apply a higher-kind type of four type parameters.
32
+ *
33
+ * @template ParameterOneType - The first type parameter.
34
+ * @template ParameterTwoType - The second type parameter.
35
+ * @template ParameterThreeType - The third type parameter.
36
+ * @template ParameterFourType - The fourth type parameter.
37
+ */
38
+ export type FourParams<HigherKindType extends Keyof.FourParams, ParameterOneType, ParameterTwoType, ParameterThreeType, ParameterFourType> = Registrar.FourParams<ParameterOneType, ParameterTwoType, ParameterThreeType, ParameterFourType>[HigherKindType];
39
+ /**
40
+ * Apply a higher-kind type of five type parameters.
41
+ *
42
+ * @template ParameterOneType - The first type parameter.
43
+ * @template ParameterTwoType - The second type parameter.
44
+ * @template ParameterThreeType - The third type parameter.
45
+ * @template ParameterFourType - The fourth type parameter.
46
+ * @template ParameterFiveType - The fifth type parameter.
47
+ */
48
+ export type FiveParams<HigherKindType extends Keyof.FiveParams, ParameterOneType, ParameterTwoType, ParameterThreeType, ParameterFourType, ParameterFiveType> = Registrar.FiveParams<ParameterOneType, ParameterTwoType, ParameterThreeType, ParameterFourType, ParameterFiveType>[HigherKindType];
49
+ /**
50
+ * Apply a higher-kind type of six type parameters.
51
+ *
52
+ * @template ParameterOneType - The first type parameter.
53
+ * @template ParameterTwoType - The second type parameter.
54
+ * @template ParameterThreeType - The third type parameter.
55
+ * @template ParameterFourType - The fourth type parameter.
56
+ * @template ParameterFiveType - The fifth type parameter.
57
+ * @template ParameterSixType - The sixth type parameter.
58
+ */
59
+ export type SixParams<HigherKindType extends Keyof.SixParams, ParameterOneType, ParameterTwoType, ParameterThreeType, ParameterFourType, ParameterFiveType, ParameterSixType> = Registrar.SixParams<ParameterOneType, ParameterTwoType, ParameterThreeType, ParameterFourType, ParameterFiveType, ParameterSixType>[HigherKindType];
60
+ /**
61
+ * Apply a higher-kind type of seven type parameters.
62
+ *
63
+ * @template ParameterOneType - The first type parameter.
64
+ * @template ParameterTwoType - The second type parameter.
65
+ * @template ParameterThreeType - The third type parameter.
66
+ * @template ParameterFourType - The fourth type parameter.
67
+ * @template ParameterFiveType - The fifth type parameter.
68
+ * @template ParameterSixType - The sixth type parameter.
69
+ * @template ParameterSevenType - The seventh type parameter.
70
+ */
71
+ export type SevenParams<HigherKindType extends Keyof.SevenParams, ParameterOneType, ParameterTwoType, ParameterThreeType, ParameterFourType, ParameterFiveType, ParameterSixType, ParameterSevenType> = Registrar.SevenParams<ParameterOneType, ParameterTwoType, ParameterThreeType, ParameterFourType, ParameterFiveType, ParameterSixType, ParameterSevenType>[HigherKindType];
72
+ /**
73
+ * Apply a higher-kind type of eight type parameters.
74
+ *
75
+ * @template ParameterOneType - The first type parameter.
76
+ * @template ParameterTwoType - The second type parameter.
77
+ * @template ParameterThreeType - The third type parameter.
78
+ * @template ParameterFourType - The fourth type parameter.
79
+ * @template ParameterFiveType - The fifth type parameter.
80
+ * @template ParameterSixType - The sixth type parameter.
81
+ * @template ParameterSevenType - The seventh type parameter.
82
+ * @template ParameterEightType - The eighth type parameter.
83
+ */
84
+ export type EightParams<HigherKindType extends Keyof.EightParams, ParameterOneType, ParameterTwoType, ParameterThreeType, ParameterFourType, ParameterFiveType, ParameterSixType, ParameterSevenType, ParameterEightType> = Registrar.EightParams<ParameterOneType, ParameterTwoType, ParameterThreeType, ParameterFourType, ParameterFiveType, ParameterSixType, ParameterSevenType, ParameterEightType>[HigherKindType];
85
+ //# sourceMappingURL=HigherKind.Types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"HigherKind.Types.d.ts","sourceRoot":"","sources":["../../../Source/HigherKind/HigherKind.Types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,KAAK,SAAS,MAAM,iCAAiC,CAAC;AAClE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,gCAAgC,CAAC;AAE5D;;;;GAIG;AACH,MAAM,MAAM,QAAQ,CAChB,cAAc,SAAS,KAAK,CAAC,QAAQ,EACrC,gBAAgB,IAChB,SAAS,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC,cAAc,CAAC,CAAC;AAEzD;;;;;GAKG;AACH,MAAM,MAAM,SAAS,CACjB,cAAc,SAAS,KAAK,CAAC,SAAS,EACtC,gBAAgB,EAChB,gBAAgB,IAEhB,SAAS,CAAC,SAAS,CACf,gBAAgB,EAChB,gBAAgB,CACnB,CAAC,cAAc,CAAC,CAAC;AAEtB;;;;;;GAMG;AACH,MAAM,MAAM,WAAW,CACnB,cAAc,SAAS,KAAK,CAAC,WAAW,EACxC,gBAAgB,EAChB,gBAAgB,EAChB,kBAAkB,IAElB,SAAS,CAAC,WAAW,CACjB,gBAAgB,EAChB,gBAAgB,EAChB,kBAAkB,CACrB,CAAC,cAAc,CAAC,CAAC;AAEtB;;;;;;;GAOG;AACH,MAAM,MAAM,UAAU,CAClB,cAAc,SAAS,KAAK,CAAC,UAAU,EACvC,gBAAgB,EAChB,gBAAgB,EAChB,kBAAkB,EAClB,iBAAiB,IAEjB,SAAS,CAAC,UAAU,CAChB,gBAAgB,EAChB,gBAAgB,EAChB,kBAAkB,EAClB,iBAAiB,CACpB,CAAC,cAAc,CAAC,CAAC;AAEtB;;;;;;;;GAQG;AACH,MAAM,MAAM,UAAU,CAClB,cAAc,SAAS,KAAK,CAAC,UAAU,EACvC,gBAAgB,EAChB,gBAAgB,EAChB,kBAAkB,EAClB,iBAAiB,EACjB,iBAAiB,IAEjB,SAAS,CAAC,UAAU,CAChB,gBAAgB,EAChB,gBAAgB,EAChB,kBAAkB,EAClB,iBAAiB,EACjB,iBAAiB,CACpB,CAAC,cAAc,CAAC,CAAC;AAEtB;;;;;;;;;GASG;AACH,MAAM,MAAM,SAAS,CACjB,cAAc,SAAS,KAAK,CAAC,SAAS,EACtC,gBAAgB,EAChB,gBAAgB,EAChB,kBAAkB,EAClB,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,IAEhB,SAAS,CAAC,SAAS,CACf,gBAAgB,EAChB,gBAAgB,EAChB,kBAAkB,EAClB,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,CACnB,CAAC,cAAc,CAAC,CAAC;AAEtB;;;;;;;;;;GAUG;AACH,MAAM,MAAM,WAAW,CACnB,cAAc,SAAS,KAAK,CAAC,WAAW,EACxC,gBAAgB,EAChB,gBAAgB,EAChB,kBAAkB,EAClB,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,EAChB,kBAAkB,IAElB,SAAS,CAAC,WAAW,CACjB,gBAAgB,EAChB,gBAAgB,EAChB,kBAAkB,EAClB,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,EAChB,kBAAkB,CACrB,CAAC,cAAc,CAAC,CAAC;AAEtB;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,WAAW,CACnB,cAAc,SAAS,KAAK,CAAC,WAAW,EACxC,gBAAgB,EAChB,gBAAgB,EAChB,kBAAkB,EAClB,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,EAChB,kBAAkB,EAClB,kBAAkB,IAElB,SAAS,CAAC,WAAW,CACjB,gBAAgB,EAChB,gBAAgB,EAChB,kBAAkB,EAClB,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,EAChB,kBAAkB,EAClB,kBAAkB,CACrB,CAAC,cAAc,CAAC,CAAC"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * @file index.ts
3
+ * @author Gage Sorrell <gage@sorrell.sh>
4
+ * @copyright (c) 2026 Gage Sorrell
5
+ * @license MIT
6
+ */
7
+ export * from "./HigherKind.Types.cjs";
8
+ //# sourceMappingURL=index.d.cts.map
@@ -0,0 +1,10 @@
1
+ {
2
+ "version": 3,
3
+ "file": "index.d.cts",
4
+ "sourceRoot": "",
5
+ "sources": [
6
+ "../../../Source/HigherKind/index.ts"
7
+ ],
8
+ "names": [],
9
+ "mappings": "AAAA;;;;;GAKG;AAEH,cAAc,uBAAuB,CAAC"
10
+ }
@@ -0,0 +1,8 @@
1
+ /**
2
+ * @file index.ts
3
+ * @author Gage Sorrell <gage@sorrell.sh>
4
+ * @copyright (c) 2026 Gage Sorrell
5
+ * @license MIT
6
+ */
7
+ export * from "./HigherKind.Types.mjs";
8
+ //# sourceMappingURL=index.d.mts.map
@@ -0,0 +1,10 @@
1
+ {
2
+ "version": 3,
3
+ "file": "index.d.mts",
4
+ "sourceRoot": "",
5
+ "sources": [
6
+ "../../../Source/HigherKind/index.ts"
7
+ ],
8
+ "names": [],
9
+ "mappings": "AAAA;;;;;GAKG;AAEH,cAAc,uBAAuB,CAAC"
10
+ }
@@ -0,0 +1,8 @@
1
+ /**
2
+ * @file index.ts
3
+ * @author Gage Sorrell <gage@sorrell.sh>
4
+ * @copyright (c) 2026 Gage Sorrell
5
+ * @license MIT
6
+ */
7
+ export * from "./HigherKind.Types.ts";
8
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../Source/HigherKind/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,cAAc,uBAAuB,CAAC"}
@@ -5,7 +5,6 @@
5
5
  * @license MIT
6
6
  */
7
7
  import type { NoOptions } from "./Utility.Internal.cjs";
8
- import type TypeScript from "typescript";
9
8
  /**
10
9
  * @deprecated Use {@link TMutable} instead.
11
10
  *
@@ -72,30 +71,6 @@ export type TNullable<Type> = Type | null | undefined;
72
71
  export declare class AbstractMethodCallError extends Error {
73
72
  constructor(ClassName?: string);
74
73
  }
75
- /** The type corresponding to the schema of `tsconfig.json`. */
76
- export interface FTsConfig {
77
- extends?: string | Array<string>;
78
- files?: Array<string>;
79
- include?: Array<string>;
80
- exclude?: Array<string>;
81
- references?: Array<TypeScript.ProjectReference>;
82
- compilerOptions?: FCompilerOptions;
83
- watchOptions?: TypeScript.WatchOptions;
84
- typeAcquisition?: TypeScript.TypeAcquisition;
85
- compileOnSave?: boolean;
86
- }
87
- type FOverriddenCompilerOptions = "jsx" | "lib" | "module" | "moduleResolution" | "target";
88
- type FCompilerOptions = Omit<TypeScript.server.protocol.CompilerOptions, FOverriddenCompilerOptions> & Partial<{
89
- jsx: JsxEmit;
90
- lib: Array<string>;
91
- module: FModuleKind;
92
- moduleResolution: FModuleResolutionKind;
93
- target: FTarget;
94
- }>;
95
- type JsxEmit = "none" | "preserve" | "react-native" | "react" | "react-jsx" | "react-jsxdev";
96
- type FModuleKind = "none" | "commonjs" | "amd" | "umd" | "system" | "es6" | "es2015" | "es2020" | "es2022" | "esnext" | "node16" | "node18" | "node20" | "nodenext" | "preserve";
97
- type FModuleResolutionKind = "classic" | "node" | "node" | "node10" | "node16" | "nodenext" | "bundler";
98
- type FTarget = "es3" | "es5" | "es6" | "es2015" | "es2016" | "es2017" | "es2018" | "es2019" | "es2020" | "es2021" | "es2022" | "es2023" | "es2024" | "es2025" | "esnext" | "json" | "esnext" | "es2025";
99
74
  /**
100
75
  * Maps a given {@link RecordLike} type to an identical {@link Record} type, but
101
76
  * the properties are wrapped with {@link NonNullable}.
@@ -105,5 +80,16 @@ type FTarget = "es3" | "es5" | "es6" | "es2015" | "es2016" | "es2017" | "es2018"
105
80
  export type TRecordNonNullable<RecordLike> = {
106
81
  [Key in keyof RecordLike]: NonNullable<RecordLike[Key]>;
107
82
  };
108
- export {};
83
+ /**
84
+ * A "safe" intersection of two types, such that if exactly one
85
+ * of the two types is `never`, then this evaluates to the other type.
86
+ * This evaluates to the intersection of the two types iff *both*
87
+ * type parameters.
88
+ *
89
+ * @template LeftType - The first type parameter.
90
+ * @template RightType - The second type parameter.
91
+ */
92
+ export type TSafeIntersection<LeftType, RightType> = [
93
+ LeftType
94
+ ] extends [never] ? [RightType] extends [never] ? never : RightType : [RightType] extends [never] ? LeftType : (LeftType & RightType);
109
95
  //# sourceMappingURL=Utility.Types.d.cts.map
@@ -6,5 +6,5 @@
6
6
  "../../../Source/Miscellaneous/Utility.Types.ts"
7
7
  ],
8
8
  "names": [],
9
- "mappings": "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"
9
+ "mappings": "AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAEvD;;;;;;;GAOG;AACH,MAAM,MAAM,cAAc,CAAC,UAAU,IACjC;IACI,CAAC,UAAW,GAAG,IAAI,MAAM,UAAU,GAAI,cAAc,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;CACzE,CAAC;AAEN;;;;;;;;;GASG;AACH,MAAM,MAAM,QAAQ,CAAC,UAAU,EAAE,aAAa,SAAS,OAAO,GAAG,IAAI,IACjE,aAAa,SAAS,KAAK,GACrB;IACE,CAAC,UAAW,GAAG,IAAI,MAAM,UAAU,GAAI,UAAU,CAAC,GAAG,CAAC;CACzD,GACC,aAAa,SAAS,IAAI,GACtB;IACE,CAAC,UAAW,GAAG,IAAI,MAAM,UAAU,GAAI,QAAQ,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;CACnE,GACC,KAAK,CAAC;AAEpB;;;;;GAKG;AACH,MAAM,MAAM,OAAO,CAAC,UAAU,IAAI,UAAU,CAAC,MAAM,UAAU,CAAC,CAAC;AAE/D;;;;;GAKG;AACH,MAAM,MAAM,MAAM,CACd,UAAU,EACV,OAAO,SAAS,MAAM,UAAU,GAAG,MAAM,UAAU,IACnD,CAAE,OAAO,EAAE,UAAU,CAAC,OAAO,CAAC,CAAE,CAAC;AAErC,qEAAqE;AACrE,MAAM,MAAM,SAAS,GAAG,OAAO,SAAS,CAAC;AAEzC;;;;;;;;;;;;GAYG;AACH,MAAM,MAAM,QAAQ,CAAC,WAAW,SAAS,MAAM,GAAG,SAAS,IACrD,WAAW,GACX,SAAS,CAAC;AAEhB;;;;GAIG;AACH,MAAM,MAAM,SAAS,CAAC,IAAI,IACpB,IAAI,GACJ,IAAI,GACJ,SAAS,CAAC;AAEhB,kFAAkF;AAClF,qBAAa,uBAAwB,SAAQ,KAAK;gBAE3B,SAAS,CAAC,EAAE,MAAM;CAIxC;AAED;;;;;GAKG;AACH,MAAM,MAAM,kBAAkB,CAAC,UAAU,IACrC;KACM,GAAG,IAAI,MAAM,UAAU,GAAI,WAAW,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;CAC5D,CAAC;AAEN;;;;;;;;GAQG;AACH,MAAM,MAAM,iBAAiB,CAAC,QAAQ,EAAE,SAAS,IAC7C;IAAE,QAAQ;CAAE,SAAS,CAAE,KAAK,CAAE,GACxB,CAAE,SAAS,CAAE,SAAS,CAAE,KAAK,CAAE,GAC3B,KAAK,GACL,SAAS,GACb,CAAE,SAAS,CAAE,SAAS,CAAE,KAAK,CAAE,GAC3B,QAAQ,GACR,CAAC,QAAQ,GAAG,SAAS,CAAC,CAAC"
10
10
  }
@@ -5,7 +5,6 @@
5
5
  * @license MIT
6
6
  */
7
7
  import type { NoOptions } from "./Utility.Internal.mjs";
8
- import type TypeScript from "typescript";
9
8
  /**
10
9
  * @deprecated Use {@link TMutable} instead.
11
10
  *
@@ -72,30 +71,6 @@ export type TNullable<Type> = Type | null | undefined;
72
71
  export declare class AbstractMethodCallError extends Error {
73
72
  constructor(ClassName?: string);
74
73
  }
75
- /** The type corresponding to the schema of `tsconfig.json`. */
76
- export interface FTsConfig {
77
- extends?: string | Array<string>;
78
- files?: Array<string>;
79
- include?: Array<string>;
80
- exclude?: Array<string>;
81
- references?: Array<TypeScript.ProjectReference>;
82
- compilerOptions?: FCompilerOptions;
83
- watchOptions?: TypeScript.WatchOptions;
84
- typeAcquisition?: TypeScript.TypeAcquisition;
85
- compileOnSave?: boolean;
86
- }
87
- type FOverriddenCompilerOptions = "jsx" | "lib" | "module" | "moduleResolution" | "target";
88
- type FCompilerOptions = Omit<TypeScript.server.protocol.CompilerOptions, FOverriddenCompilerOptions> & Partial<{
89
- jsx: JsxEmit;
90
- lib: Array<string>;
91
- module: FModuleKind;
92
- moduleResolution: FModuleResolutionKind;
93
- target: FTarget;
94
- }>;
95
- type JsxEmit = "none" | "preserve" | "react-native" | "react" | "react-jsx" | "react-jsxdev";
96
- type FModuleKind = "none" | "commonjs" | "amd" | "umd" | "system" | "es6" | "es2015" | "es2020" | "es2022" | "esnext" | "node16" | "node18" | "node20" | "nodenext" | "preserve";
97
- type FModuleResolutionKind = "classic" | "node" | "node" | "node10" | "node16" | "nodenext" | "bundler";
98
- type FTarget = "es3" | "es5" | "es6" | "es2015" | "es2016" | "es2017" | "es2018" | "es2019" | "es2020" | "es2021" | "es2022" | "es2023" | "es2024" | "es2025" | "esnext" | "json" | "esnext" | "es2025";
99
74
  /**
100
75
  * Maps a given {@link RecordLike} type to an identical {@link Record} type, but
101
76
  * the properties are wrapped with {@link NonNullable}.
@@ -105,5 +80,16 @@ type FTarget = "es3" | "es5" | "es6" | "es2015" | "es2016" | "es2017" | "es2018"
105
80
  export type TRecordNonNullable<RecordLike> = {
106
81
  [Key in keyof RecordLike]: NonNullable<RecordLike[Key]>;
107
82
  };
108
- export {};
83
+ /**
84
+ * A "safe" intersection of two types, such that if exactly one
85
+ * of the two types is `never`, then this evaluates to the other type.
86
+ * This evaluates to the intersection of the two types iff *both*
87
+ * type parameters.
88
+ *
89
+ * @template LeftType - The first type parameter.
90
+ * @template RightType - The second type parameter.
91
+ */
92
+ export type TSafeIntersection<LeftType, RightType> = [
93
+ LeftType
94
+ ] extends [never] ? [RightType] extends [never] ? never : RightType : [RightType] extends [never] ? LeftType : (LeftType & RightType);
109
95
  //# sourceMappingURL=Utility.Types.d.mts.map
@@ -6,5 +6,5 @@
6
6
  "../../../Source/Miscellaneous/Utility.Types.ts"
7
7
  ],
8
8
  "names": [],
9
- "mappings": "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"
9
+ "mappings": "AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAEvD;;;;;;;GAOG;AACH,MAAM,MAAM,cAAc,CAAC,UAAU,IACjC;IACI,CAAC,UAAW,GAAG,IAAI,MAAM,UAAU,GAAI,cAAc,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;CACzE,CAAC;AAEN;;;;;;;;;GASG;AACH,MAAM,MAAM,QAAQ,CAAC,UAAU,EAAE,aAAa,SAAS,OAAO,GAAG,IAAI,IACjE,aAAa,SAAS,KAAK,GACrB;IACE,CAAC,UAAW,GAAG,IAAI,MAAM,UAAU,GAAI,UAAU,CAAC,GAAG,CAAC;CACzD,GACC,aAAa,SAAS,IAAI,GACtB;IACE,CAAC,UAAW,GAAG,IAAI,MAAM,UAAU,GAAI,QAAQ,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;CACnE,GACC,KAAK,CAAC;AAEpB;;;;;GAKG;AACH,MAAM,MAAM,OAAO,CAAC,UAAU,IAAI,UAAU,CAAC,MAAM,UAAU,CAAC,CAAC;AAE/D;;;;;GAKG;AACH,MAAM,MAAM,MAAM,CACd,UAAU,EACV,OAAO,SAAS,MAAM,UAAU,GAAG,MAAM,UAAU,IACnD,CAAE,OAAO,EAAE,UAAU,CAAC,OAAO,CAAC,CAAE,CAAC;AAErC,qEAAqE;AACrE,MAAM,MAAM,SAAS,GAAG,OAAO,SAAS,CAAC;AAEzC;;;;;;;;;;;;GAYG;AACH,MAAM,MAAM,QAAQ,CAAC,WAAW,SAAS,MAAM,GAAG,SAAS,IACrD,WAAW,GACX,SAAS,CAAC;AAEhB;;;;GAIG;AACH,MAAM,MAAM,SAAS,CAAC,IAAI,IACpB,IAAI,GACJ,IAAI,GACJ,SAAS,CAAC;AAEhB,kFAAkF;AAClF,qBAAa,uBAAwB,SAAQ,KAAK;gBAE3B,SAAS,CAAC,EAAE,MAAM;CAIxC;AAED;;;;;GAKG;AACH,MAAM,MAAM,kBAAkB,CAAC,UAAU,IACrC;KACM,GAAG,IAAI,MAAM,UAAU,GAAI,WAAW,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;CAC5D,CAAC;AAEN;;;;;;;;GAQG;AACH,MAAM,MAAM,iBAAiB,CAAC,QAAQ,EAAE,SAAS,IAC7C;IAAE,QAAQ;CAAE,SAAS,CAAE,KAAK,CAAE,GACxB,CAAE,SAAS,CAAE,SAAS,CAAE,KAAK,CAAE,GAC3B,KAAK,GACL,SAAS,GACb,CAAE,SAAS,CAAE,SAAS,CAAE,KAAK,CAAE,GAC3B,QAAQ,GACR,CAAC,QAAQ,GAAG,SAAS,CAAC,CAAC"
10
10
  }
@@ -5,7 +5,6 @@
5
5
  * @license MIT
6
6
  */
7
7
  import type { NoOptions } from "./Utility.Internal.ts";
8
- import type TypeScript from "typescript";
9
8
  /**
10
9
  * @deprecated Use {@link TMutable} instead.
11
10
  *
@@ -72,30 +71,6 @@ export type TNullable<Type> = Type | null | undefined;
72
71
  export declare class AbstractMethodCallError extends Error {
73
72
  constructor(ClassName?: string);
74
73
  }
75
- /** The type corresponding to the schema of `tsconfig.json`. */
76
- export interface FTsConfig {
77
- extends?: string | Array<string>;
78
- files?: Array<string>;
79
- include?: Array<string>;
80
- exclude?: Array<string>;
81
- references?: Array<TypeScript.ProjectReference>;
82
- compilerOptions?: FCompilerOptions;
83
- watchOptions?: TypeScript.WatchOptions;
84
- typeAcquisition?: TypeScript.TypeAcquisition;
85
- compileOnSave?: boolean;
86
- }
87
- type FOverriddenCompilerOptions = "jsx" | "lib" | "module" | "moduleResolution" | "target";
88
- type FCompilerOptions = Omit<TypeScript.server.protocol.CompilerOptions, FOverriddenCompilerOptions> & Partial<{
89
- jsx: JsxEmit;
90
- lib: Array<string>;
91
- module: FModuleKind;
92
- moduleResolution: FModuleResolutionKind;
93
- target: FTarget;
94
- }>;
95
- type JsxEmit = "none" | "preserve" | "react-native" | "react" | "react-jsx" | "react-jsxdev";
96
- type FModuleKind = "none" | "commonjs" | "amd" | "umd" | "system" | "es6" | "es2015" | "es2020" | "es2022" | "esnext" | "node16" | "node18" | "node20" | "nodenext" | "preserve";
97
- type FModuleResolutionKind = "classic" | "node" | "node" | "node10" | "node16" | "nodenext" | "bundler";
98
- type FTarget = "es3" | "es5" | "es6" | "es2015" | "es2016" | "es2017" | "es2018" | "es2019" | "es2020" | "es2021" | "es2022" | "es2023" | "es2024" | "es2025" | "esnext" | "json" | "esnext" | "es2025";
99
74
  /**
100
75
  * Maps a given {@link RecordLike} type to an identical {@link Record} type, but
101
76
  * the properties are wrapped with {@link NonNullable}.
@@ -105,5 +80,16 @@ type FTarget = "es3" | "es5" | "es6" | "es2015" | "es2016" | "es2017" | "es2018"
105
80
  export type TRecordNonNullable<RecordLike> = {
106
81
  [Key in keyof RecordLike]: NonNullable<RecordLike[Key]>;
107
82
  };
108
- export {};
83
+ /**
84
+ * A "safe" intersection of two types, such that if exactly one
85
+ * of the two types is `never`, then this evaluates to the other type.
86
+ * This evaluates to the intersection of the two types iff *both*
87
+ * type parameters.
88
+ *
89
+ * @template LeftType - The first type parameter.
90
+ * @template RightType - The second type parameter.
91
+ */
92
+ export type TSafeIntersection<LeftType, RightType> = [
93
+ LeftType
94
+ ] extends [never] ? [RightType] extends [never] ? never : RightType : [RightType] extends [never] ? LeftType : (LeftType & RightType);
109
95
  //# sourceMappingURL=Utility.Types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Utility.Types.d.ts","sourceRoot":"","sources":["../../../Source/Miscellaneous/Utility.Types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Utility.Types.d.ts","sourceRoot":"","sources":["../../../Source/Miscellaneous/Utility.Types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAEvD;;;;;;;GAOG;AACH,MAAM,MAAM,cAAc,CAAC,UAAU,IACjC;IACI,CAAC,UAAW,GAAG,IAAI,MAAM,UAAU,GAAI,cAAc,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;CACzE,CAAC;AAEN;;;;;;;;;GASG;AACH,MAAM,MAAM,QAAQ,CAAC,UAAU,EAAE,aAAa,SAAS,OAAO,GAAG,IAAI,IACjE,aAAa,SAAS,KAAK,GACrB;IACE,CAAC,UAAW,GAAG,IAAI,MAAM,UAAU,GAAI,UAAU,CAAC,GAAG,CAAC;CACzD,GACC,aAAa,SAAS,IAAI,GACtB;IACE,CAAC,UAAW,GAAG,IAAI,MAAM,UAAU,GAAI,QAAQ,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;CACnE,GACC,KAAK,CAAC;AAEpB;;;;;GAKG;AACH,MAAM,MAAM,OAAO,CAAC,UAAU,IAAI,UAAU,CAAC,MAAM,UAAU,CAAC,CAAC;AAE/D;;;;;GAKG;AACH,MAAM,MAAM,MAAM,CACd,UAAU,EACV,OAAO,SAAS,MAAM,UAAU,GAAG,MAAM,UAAU,IACnD,CAAE,OAAO,EAAE,UAAU,CAAC,OAAO,CAAC,CAAE,CAAC;AAErC,qEAAqE;AACrE,MAAM,MAAM,SAAS,GAAG,OAAO,SAAS,CAAC;AAEzC;;;;;;;;;;;;GAYG;AACH,MAAM,MAAM,QAAQ,CAAC,WAAW,SAAS,MAAM,GAAG,SAAS,IACrD,WAAW,GACX,SAAS,CAAC;AAEhB;;;;GAIG;AACH,MAAM,MAAM,SAAS,CAAC,IAAI,IACpB,IAAI,GACJ,IAAI,GACJ,SAAS,CAAC;AAEhB,kFAAkF;AAClF,qBAAa,uBAAwB,SAAQ,KAAK;gBAE3B,SAAS,CAAC,EAAE,MAAM;CAIxC;AAED;;;;;GAKG;AACH,MAAM,MAAM,kBAAkB,CAAC,UAAU,IACrC;KACM,GAAG,IAAI,MAAM,UAAU,GAAI,WAAW,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;CAC5D,CAAC;AAEN;;;;;;;;GAQG;AACH,MAAM,MAAM,iBAAiB,CAAC,QAAQ,EAAE,SAAS,IAC7C;IAAE,QAAQ;CAAE,SAAS,CAAE,KAAK,CAAE,GACxB,CAAE,SAAS,CAAE,SAAS,CAAE,KAAK,CAAE,GAC3B,KAAK,GACL,SAAS,GACb,CAAE,SAAS,CAAE,SAAS,CAAE,KAAK,CAAE,GAC3B,QAAQ,GACR,CAAC,QAAQ,GAAG,SAAS,CAAC,CAAC"}
@@ -9,20 +9,65 @@
9
9
  * Functions for manipulating strings.
10
10
  */
11
11
  /**
12
- * @param In - The string that you wish to test.
13
- * @returns Whether the given string contains *only* (Latin alphabet) letters.
12
+ * Does the given {@link TestString} contain only letters?
13
+ * This is equivalent to Python's
14
+ * {@link https://docs.python.org/3/library/stdtypes.html#str.isalpha | isalpha} function.
15
+ *
16
+ * @remarks This is an alias for {@link IsAlpha}.
17
+ *
18
+ * @param TestString - The string that you wish to test.
19
+ *
20
+ * @returns {boolean} Whether the given string contains *only* (Latin alphabet) letters.
21
+ */
22
+ export declare function IsLetters(TestString: string): boolean;
23
+ /**
24
+ * Does the given {@link TestString} contain only letters?
25
+ * This is equivalent to Python's
26
+ * {@link https://docs.python.org/3/library/stdtypes.html#str.isalpha | isalpha} function.
27
+ *
28
+ * @param TestString - The string that you wish to test.
29
+ *
30
+ * @returns {boolean} Whether the given string contains *only* (Latin alphabet) letters.
14
31
  */
15
- export declare function IsLetters(In: string): boolean;
32
+ export declare function IsAlpha(TestString: string): boolean;
16
33
  /**
17
- * @remarks *(This is an alias for `IsOnlyLetters`).*
34
+ * Does the given {@link TestString} contain only digits?
18
35
  *
19
- * @param In - The string that you wish to test.
20
- * @returns Whether the given string contains *only* (Latin alphabet) letters.
36
+ * This is equivalent to Python's
37
+ * {@link https://docs.python.org/3/library/stdtypes.html#str.isnumeric | isnumeric} function.
38
+ *
39
+ * @param TestString - The string that you wish to test.
40
+ *
41
+ * @returns {boolean} Whether the given string contains *only* numeric digits.
21
42
  */
22
- export declare function IsAlpha(In: string): boolean;
43
+ export declare function IsNumeric(TestString: string): boolean;
23
44
  /**
24
- * @param In - The string that you wish to test.
25
- * @returns Whether the given string contains *only* numeric digits.
45
+ * This function provides a convenient way to define long strings across multiple lines.
46
+ * The linebreaks and leading indentation are removed from the final string.
47
+ * Please see the example below for how this is to be done.
48
+ *
49
+ * @param Content - The given string to dedent.
50
+ * @param IndentLength - The number of spaces for which this function will check. This
51
+ * is necessary only if the number of spaces used in the {@link Content} is not a multiple
52
+ * of two.
53
+ *
54
+ * @returns {string} The given {@link Content}, but with the spaces at the beginning
55
+ * of each line (excluding the first line if no spaces exist in the first line) removed.
56
+ *
57
+ * @example
58
+ * ```typescript
59
+ * import { Dedent } from "@sorrell/utilities/string";
60
+ *
61
+ * const MyLongString: string = Dedent(`Lorem ipsum dolor sit amet, consectetur adipiscing elit,
62
+ * sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad
63
+ * minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea
64
+ * commodo consequat.`);
65
+ *
66
+ * // `MyLongString` <- `"Lorem ipsum dolor sit amet, consectetur adipiscing elit, \
67
+ * sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad \
68
+ * minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea \
69
+ * commodo consequat."`
70
+ * ```
26
71
  */
27
- export declare function IsNumeric(In: string): boolean;
72
+ export declare function Dedent(Content: string, IndentLength?: number): string;
28
73
  //# sourceMappingURL=String.d.cts.map
@@ -6,5 +6,5 @@
6
6
  "../../../Source/String/String.ts"
7
7
  ],
8
8
  "names": [],
9
- "mappings": "AAAA;;;;;GAKG;AAEH;;;GAGG;AAEH;;;GAGG;AACH,wBAAgB,SAAS,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAG7C;AAED;;;;;GAKG;AACH,wBAAgB,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAG3C;AAED;;;GAGG;AACH,wBAAgB,SAAS,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAG7C"
9
+ "mappings": "AAAA;;;;;GAKG;AAEH;;;GAGG;AAKH;;;;;;;;;;GAUG;AACH,wBAAgB,SAAS,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAGrD;AAED;;;;;;;;GAQG;AACH,wBAAgB,OAAO,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAGnD;AAED;;;;;;;;;GASG;AACH,wBAAgB,SAAS,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAGrD;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,wBAAgB,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM,GAAG,MAAM,CA4BrE"
10
10
  }
@@ -9,20 +9,65 @@
9
9
  * Functions for manipulating strings.
10
10
  */
11
11
  /**
12
- * @param In - The string that you wish to test.
13
- * @returns Whether the given string contains *only* (Latin alphabet) letters.
12
+ * Does the given {@link TestString} contain only letters?
13
+ * This is equivalent to Python's
14
+ * {@link https://docs.python.org/3/library/stdtypes.html#str.isalpha | isalpha} function.
15
+ *
16
+ * @remarks This is an alias for {@link IsAlpha}.
17
+ *
18
+ * @param TestString - The string that you wish to test.
19
+ *
20
+ * @returns {boolean} Whether the given string contains *only* (Latin alphabet) letters.
21
+ */
22
+ export declare function IsLetters(TestString: string): boolean;
23
+ /**
24
+ * Does the given {@link TestString} contain only letters?
25
+ * This is equivalent to Python's
26
+ * {@link https://docs.python.org/3/library/stdtypes.html#str.isalpha | isalpha} function.
27
+ *
28
+ * @param TestString - The string that you wish to test.
29
+ *
30
+ * @returns {boolean} Whether the given string contains *only* (Latin alphabet) letters.
14
31
  */
15
- export declare function IsLetters(In: string): boolean;
32
+ export declare function IsAlpha(TestString: string): boolean;
16
33
  /**
17
- * @remarks *(This is an alias for `IsOnlyLetters`).*
34
+ * Does the given {@link TestString} contain only digits?
18
35
  *
19
- * @param In - The string that you wish to test.
20
- * @returns Whether the given string contains *only* (Latin alphabet) letters.
36
+ * This is equivalent to Python's
37
+ * {@link https://docs.python.org/3/library/stdtypes.html#str.isnumeric | isnumeric} function.
38
+ *
39
+ * @param TestString - The string that you wish to test.
40
+ *
41
+ * @returns {boolean} Whether the given string contains *only* numeric digits.
21
42
  */
22
- export declare function IsAlpha(In: string): boolean;
43
+ export declare function IsNumeric(TestString: string): boolean;
23
44
  /**
24
- * @param In - The string that you wish to test.
25
- * @returns Whether the given string contains *only* numeric digits.
45
+ * This function provides a convenient way to define long strings across multiple lines.
46
+ * The linebreaks and leading indentation are removed from the final string.
47
+ * Please see the example below for how this is to be done.
48
+ *
49
+ * @param Content - The given string to dedent.
50
+ * @param IndentLength - The number of spaces for which this function will check. This
51
+ * is necessary only if the number of spaces used in the {@link Content} is not a multiple
52
+ * of two.
53
+ *
54
+ * @returns {string} The given {@link Content}, but with the spaces at the beginning
55
+ * of each line (excluding the first line if no spaces exist in the first line) removed.
56
+ *
57
+ * @example
58
+ * ```typescript
59
+ * import { Dedent } from "@sorrell/utilities/string";
60
+ *
61
+ * const MyLongString: string = Dedent(`Lorem ipsum dolor sit amet, consectetur adipiscing elit,
62
+ * sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad
63
+ * minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea
64
+ * commodo consequat.`);
65
+ *
66
+ * // `MyLongString` <- `"Lorem ipsum dolor sit amet, consectetur adipiscing elit, \
67
+ * sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad \
68
+ * minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea \
69
+ * commodo consequat."`
70
+ * ```
26
71
  */
27
- export declare function IsNumeric(In: string): boolean;
72
+ export declare function Dedent(Content: string, IndentLength?: number): string;
28
73
  //# sourceMappingURL=String.d.mts.map