@duplojs/utils 1.2.17 → 1.2.19

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 (245) hide show
  1. package/dist/array/chunk.cjs +16 -0
  2. package/dist/array/chunk.d.ts +2 -0
  3. package/dist/array/chunk.mjs +14 -0
  4. package/dist/array/every.cjs +6 -3
  5. package/dist/array/every.d.ts +4 -3
  6. package/dist/array/every.mjs +6 -3
  7. package/dist/array/fill/all.d.ts +2 -2
  8. package/dist/array/filter.cjs +6 -3
  9. package/dist/array/filter.d.ts +6 -5
  10. package/dist/array/filter.mjs +6 -3
  11. package/dist/array/flatMap.cjs +6 -3
  12. package/dist/array/flatMap.d.ts +4 -3
  13. package/dist/array/flatMap.mjs +6 -3
  14. package/dist/array/index.cjs +13 -10
  15. package/dist/array/index.d.ts +3 -0
  16. package/dist/array/index.mjs +5 -4
  17. package/dist/array/insert.cjs +12 -0
  18. package/dist/array/insert.d.ts +2 -0
  19. package/dist/array/insert.mjs +10 -0
  20. package/dist/array/isLastIndex.cjs +12 -0
  21. package/dist/array/isLastIndex.d.ts +2 -0
  22. package/dist/array/isLastIndex.mjs +10 -0
  23. package/dist/array/map.cjs +6 -3
  24. package/dist/array/map.d.ts +4 -3
  25. package/dist/array/map.mjs +6 -3
  26. package/dist/array/push.cjs +3 -3
  27. package/dist/array/push.d.ts +2 -2
  28. package/dist/array/push.mjs +3 -3
  29. package/dist/array/reduce.cjs +22 -9
  30. package/dist/array/reduce.d.ts +7 -4
  31. package/dist/array/reduce.mjs +22 -10
  32. package/dist/array/reduceRight.cjs +7 -10
  33. package/dist/array/reduceRight.d.ts +2 -2
  34. package/dist/array/reduceRight.mjs +7 -10
  35. package/dist/array/some.cjs +6 -3
  36. package/dist/array/some.d.ts +4 -3
  37. package/dist/array/some.mjs +6 -3
  38. package/dist/array/types/ArrayCoalescing.d.ts +1 -1
  39. package/dist/clean/constraint/base.cjs +77 -0
  40. package/dist/clean/constraint/base.d.ts +36 -0
  41. package/dist/clean/constraint/base.mjs +72 -0
  42. package/dist/{array/sort → clean/constraint/defaultConstraint}/index.d.ts +0 -1
  43. package/dist/clean/constraint/defaultConstraint/number.cjs +15 -0
  44. package/dist/clean/constraint/defaultConstraint/number.d.ts +8 -0
  45. package/dist/clean/constraint/defaultConstraint/number.mjs +11 -0
  46. package/dist/clean/constraint/defaultConstraint/string.cjs +12 -0
  47. package/dist/clean/constraint/defaultConstraint/string.d.ts +6 -0
  48. package/dist/clean/constraint/defaultConstraint/string.mjs +9 -0
  49. package/dist/clean/constraint/index.d.ts +2 -0
  50. package/dist/clean/entity.cjs +125 -0
  51. package/dist/clean/entity.d.ts +74 -0
  52. package/dist/clean/entity.mjs +121 -0
  53. package/dist/clean/flag.cjs +26 -0
  54. package/dist/clean/flag.d.ts +16 -0
  55. package/dist/clean/flag.mjs +23 -0
  56. package/dist/clean/index.cjs +84 -0
  57. package/dist/clean/index.d.ts +8 -0
  58. package/dist/clean/index.mjs +29 -0
  59. package/dist/clean/kind.cjs +9 -0
  60. package/dist/clean/kind.d.ts +1 -0
  61. package/dist/clean/kind.mjs +7 -0
  62. package/dist/clean/newType.cjs +91 -0
  63. package/dist/clean/newType.d.ts +38 -0
  64. package/dist/clean/newType.mjs +86 -0
  65. package/dist/clean/primitive/base.cjs +72 -0
  66. package/dist/clean/primitive/base.d.ts +36 -0
  67. package/dist/clean/primitive/base.mjs +64 -0
  68. package/dist/clean/primitive/index.d.ts +2 -0
  69. package/dist/clean/primitive/operations/date/dateGreaterThan.cjs +15 -0
  70. package/dist/clean/primitive/operations/date/dateGreaterThan.d.ts +4 -0
  71. package/dist/clean/primitive/operations/date/dateGreaterThan.mjs +13 -0
  72. package/dist/clean/primitive/operations/date/dateLessThan.cjs +15 -0
  73. package/dist/clean/primitive/operations/date/dateLessThan.d.ts +4 -0
  74. package/dist/clean/primitive/operations/date/dateLessThan.mjs +13 -0
  75. package/dist/clean/primitive/operations/date/dateMax.cjs +15 -0
  76. package/dist/clean/primitive/operations/date/dateMax.d.ts +5 -0
  77. package/dist/clean/primitive/operations/date/dateMax.mjs +13 -0
  78. package/dist/clean/primitive/operations/date/dateMin.cjs +15 -0
  79. package/dist/clean/primitive/operations/date/dateMin.d.ts +5 -0
  80. package/dist/clean/primitive/operations/date/dateMin.mjs +13 -0
  81. package/dist/clean/primitive/operations/date/index.d.ts +8 -0
  82. package/dist/clean/primitive/operations/equal.cjs +14 -0
  83. package/dist/clean/primitive/operations/equal.d.ts +4 -0
  84. package/dist/clean/primitive/operations/equal.mjs +12 -0
  85. package/dist/clean/primitive/operations/index.d.ts +5 -0
  86. package/dist/clean/primitive/operations/number/add.cjs +15 -0
  87. package/dist/clean/primitive/operations/number/add.d.ts +3 -0
  88. package/dist/clean/primitive/operations/number/add.mjs +13 -0
  89. package/dist/clean/primitive/operations/number/divide.cjs +15 -0
  90. package/dist/clean/primitive/operations/number/divide.d.ts +3 -0
  91. package/dist/clean/primitive/operations/number/divide.mjs +13 -0
  92. package/dist/clean/primitive/operations/number/greaterThan.cjs +14 -0
  93. package/dist/clean/primitive/operations/number/greaterThan.d.ts +3 -0
  94. package/dist/clean/primitive/operations/number/greaterThan.mjs +12 -0
  95. package/dist/clean/primitive/operations/number/index.d.ts +8 -0
  96. package/dist/clean/primitive/operations/number/lessThan.cjs +14 -0
  97. package/dist/clean/primitive/operations/number/lessThan.d.ts +3 -0
  98. package/dist/clean/primitive/operations/number/lessThan.mjs +12 -0
  99. package/dist/clean/primitive/operations/number/max.cjs +10 -0
  100. package/dist/clean/primitive/operations/number/max.d.ts +3 -0
  101. package/dist/clean/primitive/operations/number/max.mjs +8 -0
  102. package/dist/clean/primitive/operations/number/min.cjs +10 -0
  103. package/dist/clean/primitive/operations/number/min.d.ts +3 -0
  104. package/dist/clean/primitive/operations/number/min.mjs +8 -0
  105. package/dist/clean/primitive/operations/number/multiply.cjs +15 -0
  106. package/dist/clean/primitive/operations/number/multiply.d.ts +3 -0
  107. package/dist/clean/primitive/operations/number/multiply.mjs +13 -0
  108. package/dist/clean/primitive/operations/number/subtract.cjs +15 -0
  109. package/dist/clean/primitive/operations/number/subtract.d.ts +3 -0
  110. package/dist/clean/primitive/operations/number/subtract.mjs +13 -0
  111. package/dist/clean/primitive/operations/sort.cjs +35 -0
  112. package/dist/clean/primitive/operations/sort.d.ts +9 -0
  113. package/dist/clean/primitive/operations/sort.mjs +33 -0
  114. package/dist/clean/primitive/operations/string/concat.cjs +16 -0
  115. package/dist/clean/primitive/operations/string/concat.d.ts +3 -0
  116. package/dist/clean/primitive/operations/string/concat.mjs +14 -0
  117. package/dist/clean/primitive/operations/string/index.d.ts +5 -0
  118. package/dist/clean/primitive/operations/string/length.cjs +10 -0
  119. package/dist/clean/primitive/operations/string/length.d.ts +2 -0
  120. package/dist/clean/primitive/operations/string/length.mjs +8 -0
  121. package/dist/clean/primitive/operations/string/lengthEqual.cjs +14 -0
  122. package/dist/clean/primitive/operations/string/lengthEqual.d.ts +3 -0
  123. package/dist/clean/primitive/operations/string/lengthEqual.mjs +12 -0
  124. package/dist/clean/primitive/operations/string/lengthGreaterThan.cjs +14 -0
  125. package/dist/clean/primitive/operations/string/lengthGreaterThan.d.ts +3 -0
  126. package/dist/clean/primitive/operations/string/lengthGreaterThan.mjs +12 -0
  127. package/dist/clean/primitive/operations/string/lengthLessThan.cjs +14 -0
  128. package/dist/clean/primitive/operations/string/lengthLessThan.d.ts +3 -0
  129. package/dist/clean/primitive/operations/string/lengthLessThan.mjs +12 -0
  130. package/dist/clean/repository.cjs +15 -0
  131. package/dist/clean/repository.d.ts +8 -0
  132. package/dist/clean/repository.mjs +12 -0
  133. package/dist/clean/useCase.cjs +25 -0
  134. package/dist/clean/useCase.d.ts +23 -0
  135. package/dist/clean/useCase.mjs +21 -0
  136. package/dist/common/index.d.ts +0 -1
  137. package/dist/common/kind.d.ts +1 -0
  138. package/dist/common/types/index.d.ts +1 -0
  139. package/dist/common/types/sortType.d.ts +1 -0
  140. package/dist/common/unwrap.d.ts +1 -2
  141. package/dist/dataParser/base.d.ts +5 -4
  142. package/dist/dataParser/baseExtended.d.ts +4 -4
  143. package/dist/dataParser/extended/array.d.ts +3 -3
  144. package/dist/dataParser/extended/bigint.d.ts +2 -2
  145. package/dist/dataParser/extended/boolean.d.ts +2 -2
  146. package/dist/dataParser/extended/date.d.ts +3 -2
  147. package/dist/dataParser/extended/empty.d.ts +2 -2
  148. package/dist/dataParser/extended/lazy.d.ts +3 -3
  149. package/dist/dataParser/extended/literal.d.ts +2 -2
  150. package/dist/dataParser/extended/nil.d.ts +2 -2
  151. package/dist/dataParser/extended/nullable.d.ts +3 -3
  152. package/dist/dataParser/extended/number.cjs +3 -0
  153. package/dist/dataParser/extended/number.d.ts +5 -2
  154. package/dist/dataParser/extended/number.mjs +3 -0
  155. package/dist/dataParser/extended/object.cjs +8 -13
  156. package/dist/dataParser/extended/object.d.ts +4 -2
  157. package/dist/dataParser/extended/object.mjs +8 -13
  158. package/dist/dataParser/extended/optional.d.ts +3 -3
  159. package/dist/dataParser/extended/pipe.d.ts +3 -3
  160. package/dist/dataParser/extended/record.d.ts +3 -3
  161. package/dist/dataParser/extended/recover.d.ts +3 -3
  162. package/dist/dataParser/extended/string.d.ts +2 -2
  163. package/dist/dataParser/extended/templateLiteral.d.ts +2 -2
  164. package/dist/dataParser/extended/transform.d.ts +3 -3
  165. package/dist/dataParser/extended/tuple.d.ts +3 -3
  166. package/dist/dataParser/extended/union.d.ts +3 -3
  167. package/dist/dataParser/extended/unknown.d.ts +2 -2
  168. package/dist/dataParser/identifier.d.ts +10 -160
  169. package/dist/dataParser/index.cjs +4 -0
  170. package/dist/dataParser/index.mjs +2 -0
  171. package/dist/dataParser/parsers/array/index.cjs +2 -2
  172. package/dist/dataParser/parsers/array/index.mjs +2 -2
  173. package/dist/dataParser/parsers/literal.d.ts +1 -1
  174. package/dist/dataParser/parsers/object/index.cjs +3 -3
  175. package/dist/dataParser/parsers/object/index.d.ts +2 -0
  176. package/dist/dataParser/parsers/object/index.mjs +3 -3
  177. package/dist/dataParser/parsers/object/partial.cjs +20 -0
  178. package/dist/dataParser/parsers/object/partial.d.ts +14 -0
  179. package/dist/dataParser/parsers/object/partial.mjs +18 -0
  180. package/dist/dataParser/parsers/object/required.cjs +20 -0
  181. package/dist/dataParser/parsers/object/required.d.ts +10 -0
  182. package/dist/dataParser/parsers/object/required.mjs +18 -0
  183. package/dist/dataParser/parsers/record/index.cjs +2 -2
  184. package/dist/dataParser/parsers/record/index.mjs +2 -2
  185. package/dist/dataParser/parsers/refine.d.ts +1 -1
  186. package/dist/dataParser/parsers/tuple.cjs +2 -2
  187. package/dist/dataParser/parsers/tuple.mjs +2 -2
  188. package/dist/date/index.cjs +8 -0
  189. package/dist/date/index.d.ts +4 -0
  190. package/dist/date/index.mjs +4 -0
  191. package/dist/date/is.cjs +9 -0
  192. package/dist/date/is.d.ts +2 -0
  193. package/dist/date/is.mjs +7 -0
  194. package/dist/date/max.cjs +10 -0
  195. package/dist/date/max.d.ts +3 -0
  196. package/dist/date/max.mjs +8 -0
  197. package/dist/date/min.cjs +10 -0
  198. package/dist/date/min.d.ts +3 -0
  199. package/dist/date/min.mjs +8 -0
  200. package/dist/date/sort.cjs +20 -0
  201. package/dist/date/sort.d.ts +4 -0
  202. package/dist/date/sort.mjs +18 -0
  203. package/dist/generator/chunk.cjs +24 -0
  204. package/dist/generator/chunk.d.ts +2 -0
  205. package/dist/generator/chunk.mjs +22 -0
  206. package/dist/generator/index.cjs +2 -0
  207. package/dist/generator/index.d.ts +1 -0
  208. package/dist/generator/index.mjs +1 -0
  209. package/dist/generator/reduce.cjs +2 -6
  210. package/dist/generator/reduce.d.ts +1 -0
  211. package/dist/generator/reduce.mjs +2 -6
  212. package/dist/index.cjs +3 -2
  213. package/dist/index.d.ts +2 -0
  214. package/dist/index.mjs +3 -1
  215. package/dist/number/index.cjs +2 -0
  216. package/dist/number/index.d.ts +1 -0
  217. package/dist/number/index.mjs +1 -0
  218. package/dist/number/max.cjs +2 -7
  219. package/dist/number/max.d.ts +2 -2
  220. package/dist/number/max.mjs +2 -7
  221. package/dist/number/min.cjs +2 -7
  222. package/dist/number/min.d.ts +2 -2
  223. package/dist/number/min.mjs +2 -7
  224. package/dist/number/sort.cjs +14 -0
  225. package/dist/number/sort.d.ts +3 -0
  226. package/dist/number/sort.mjs +12 -0
  227. package/dist/pattern/match/index.d.ts +3 -3
  228. package/dist/pattern/when.d.ts +5 -5
  229. package/dist/string/index.cjs +2 -0
  230. package/dist/string/index.d.ts +1 -0
  231. package/dist/string/index.mjs +1 -0
  232. package/dist/{array/sort/string.cjs → string/sort.cjs} +6 -6
  233. package/dist/string/sort.d.ts +3 -0
  234. package/dist/{array/sort/string.mjs → string/sort.mjs} +6 -6
  235. package/package.json +7 -2
  236. package/dist/array/sort/number.cjs +0 -14
  237. package/dist/array/sort/number.d.ts +0 -4
  238. package/dist/array/sort/number.mjs +0 -12
  239. package/dist/array/sort/string.d.ts +0 -4
  240. package/dist/common/not.cjs +0 -12
  241. package/dist/common/not.d.ts +0 -2
  242. package/dist/common/not.mjs +0 -10
  243. /package/dist/array/{sort/default.cjs → sort.cjs} +0 -0
  244. /package/dist/array/{sort/default.d.ts → sort.d.ts} +0 -0
  245. /package/dist/array/{sort/default.mjs → sort.mjs} +0 -0
@@ -2,23 +2,18 @@
2
2
 
3
3
  var baseExtended = require('../baseExtended.cjs');
4
4
  var index = require('../parsers/object/index.cjs');
5
- var pipe = require('../../common/pipe.cjs');
6
- var fromEntries = require('../../object/fromEntries.cjs');
7
- var filter = require('../../array/filter.cjs');
8
- var isKeyof = require('../../string/isKeyof.cjs');
9
- var entries = require('../../object/entries.cjs');
5
+ var required = require('../parsers/object/required.cjs');
6
+ var partial = require('../parsers/object/partial.cjs');
7
+ var pick = require('../parsers/object/pick.cjs');
8
+ var omit = require('../parsers/object/omit.cjs');
10
9
  var override = require('../../common/override.cjs');
11
10
 
12
11
  function object(shape, definition) {
13
12
  const self = baseExtended.dataParserExtendedInit(index.object(shape, definition), {
14
- omit: (self, omitObject, definition) => {
15
- const newShape = pipe.pipe(self.definition.shape, entries.entries, filter.filter(([key]) => !isKeyof.isKeyof(key, omitObject)), fromEntries.fromEntries);
16
- return object(newShape, definition);
17
- },
18
- pick: (self, omitObject, definition) => {
19
- const newShape = pipe.pipe(self.definition.shape, entries.entries, filter.filter(([key]) => isKeyof.isKeyof(key, omitObject)), fromEntries.fromEntries);
20
- return object(newShape, definition);
21
- },
13
+ omit: (self, omitObject, definition) => omit.omit(self, omitObject, definition),
14
+ pick: (self, pickObject, definition) => pick.pick(self, pickObject, definition),
15
+ partial: (self, definition) => partial.partial(self, definition),
16
+ required: (self, definition) => required.required(self, definition),
22
17
  });
23
18
  return object.overrideHandler.apply(self);
24
19
  }
@@ -1,9 +1,9 @@
1
- import { type FixDeepFunctionInfer, type NeverCoalescing } from "../../common";
1
+ import { type FixDeepFunctionInfer, type Kind, type NeverCoalescing } from "../../common";
2
2
  import { type DataParserExtended } from "../baseExtended";
3
3
  import { type AddCheckersToDefinition, type MergeDefinition } from "../types";
4
4
  import * as dataParsers from "../parsers";
5
5
  import { type Output } from "../base";
6
- type _DataParserObjectExtended<GenericDefinition extends dataParsers.DataParserDefinitionObject> = (dataParsers.DataParserObject<GenericDefinition> & DataParserExtended);
6
+ type _DataParserObjectExtended<GenericDefinition extends dataParsers.DataParserDefinitionObject> = (Kind<typeof dataParsers.objectKind.definition> & DataParserExtended<GenericDefinition, dataParsers.DataParserObjectShapeOutput<GenericDefinition["shape"]>, dataParsers.DataParserObjectShapeInput<GenericDefinition["shape"]>>);
7
7
  export interface DataParserObjectExtended<GenericDefinition extends dataParsers.DataParserDefinitionObject = dataParsers.DataParserDefinitionObject> extends _DataParserObjectExtended<GenericDefinition> {
8
8
  addChecker<GenericChecker extends readonly [
9
9
  dataParsers.DataParserObjectCheckers<Output<this>>,
@@ -17,6 +17,8 @@ export interface DataParserObjectExtended<GenericDefinition extends dataParsers.
17
17
  ]>>;
18
18
  omit<const GenericOmitObject extends Partial<Record<keyof GenericDefinition["shape"], true>>, const GenericSubDefinition extends Partial<Omit<dataParsers.DataParserDefinitionObject, "shape" | "optimizedShape">> = never>(omitObject: GenericOmitObject, definition?: GenericDefinition): ReturnType<typeof dataParsers.omit<dataParsers.DataParserObject<GenericDefinition>, GenericOmitObject, GenericSubDefinition>>;
19
19
  pick<const GenericPickObject extends Partial<Record<keyof GenericDefinition["shape"], true>>, const GenericSubDefinition extends Partial<Omit<dataParsers.DataParserDefinitionObject, "shape" | "optimizedShape">> = never>(pickObject: GenericPickObject, definition?: GenericDefinition): ReturnType<typeof dataParsers.pick<dataParsers.DataParserObject<GenericDefinition>, GenericPickObject, GenericSubDefinition>>;
20
+ partial<const GenericSubDefinition extends Partial<Omit<dataParsers.DataParserDefinitionObject, "shape" | "optimizedShape">> = never>(definition?: GenericDefinition): ReturnType<typeof dataParsers.partial<dataParsers.DataParserObject<GenericDefinition>, GenericSubDefinition>>;
21
+ required<const GenericSubDefinition extends Partial<Omit<dataParsers.DataParserDefinitionObject, "shape" | "optimizedShape">> = never>(definition?: GenericDefinition): ReturnType<typeof dataParsers.required<dataParsers.DataParserObject<GenericDefinition>, GenericSubDefinition>>;
20
22
  }
21
23
  export declare function object<const GenericShape extends dataParsers.DataParserObjectShape, const GenericDefinition extends Partial<Omit<dataParsers.DataParserDefinitionObject, "shape">> = never>(shape: GenericShape, definition?: GenericDefinition): DataParserObjectExtended<MergeDefinition<dataParsers.DataParserDefinitionObject, NeverCoalescing<GenericDefinition, {}> & {
22
24
  shape: GenericShape;
@@ -1,22 +1,17 @@
1
1
  import { dataParserExtendedInit } from '../baseExtended.mjs';
2
2
  import { object as object$1 } from '../parsers/object/index.mjs';
3
- import { pipe } from '../../common/pipe.mjs';
4
- import { fromEntries } from '../../object/fromEntries.mjs';
5
- import { filter } from '../../array/filter.mjs';
6
- import { isKeyof } from '../../string/isKeyof.mjs';
7
- import { entries } from '../../object/entries.mjs';
3
+ import { required } from '../parsers/object/required.mjs';
4
+ import { partial } from '../parsers/object/partial.mjs';
5
+ import { pick } from '../parsers/object/pick.mjs';
6
+ import { omit } from '../parsers/object/omit.mjs';
8
7
  import { createOverride } from '../../common/override.mjs';
9
8
 
10
9
  function object(shape, definition) {
11
10
  const self = dataParserExtendedInit(object$1(shape, definition), {
12
- omit: (self, omitObject, definition) => {
13
- const newShape = pipe(self.definition.shape, entries, filter(([key]) => !isKeyof(key, omitObject)), fromEntries);
14
- return object(newShape, definition);
15
- },
16
- pick: (self, omitObject, definition) => {
17
- const newShape = pipe(self.definition.shape, entries, filter(([key]) => isKeyof(key, omitObject)), fromEntries);
18
- return object(newShape, definition);
19
- },
11
+ omit: (self, omitObject, definition) => omit(self, omitObject, definition),
12
+ pick: (self, pickObject, definition) => pick(self, pickObject, definition),
13
+ partial: (self, definition) => partial(self, definition),
14
+ required: (self, definition) => required(self, definition),
20
15
  });
21
16
  return object.overrideHandler.apply(self);
22
17
  }
@@ -1,9 +1,9 @@
1
- import { type FixDeepFunctionInfer, type NeverCoalescing } from "../../common";
1
+ import { type FixDeepFunctionInfer, type IsEqual, type Kind, type NeverCoalescing } from "../../common";
2
2
  import { type DataParserExtended } from "../baseExtended";
3
3
  import { type AddCheckersToDefinition, type MergeDefinition } from "../types";
4
4
  import * as dataParsers from "../parsers";
5
- import { type Output, type DataParser } from "../base";
6
- type _DataParserOptionalExtended<GenericDefinition extends dataParsers.DataParserDefinitionOptional> = (dataParsers.DataParserOptional<GenericDefinition> & DataParserExtended);
5
+ import { type Input, type Output, type DataParser } from "../base";
6
+ type _DataParserOptionalExtended<GenericDefinition extends dataParsers.DataParserDefinitionOptional> = (Kind<typeof dataParsers.optionalKind.definition> & DataParserExtended<GenericDefinition, IsEqual<GenericDefinition["coalescingValue"], unknown> extends true ? Output<GenericDefinition["inner"]> | undefined : Output<GenericDefinition["inner"]>, Input<GenericDefinition["inner"]> | undefined>);
7
7
  export interface DataParserOptionalExtended<GenericDefinition extends dataParsers.DataParserDefinitionOptional = dataParsers.DataParserDefinitionOptional> extends _DataParserOptionalExtended<GenericDefinition> {
8
8
  addChecker<GenericChecker extends readonly [
9
9
  dataParsers.DataParserOptionalCheckers<Output<this>>,
@@ -1,9 +1,9 @@
1
- import { type FixDeepFunctionInfer, type NeverCoalescing } from "../../common";
1
+ import { type FixDeepFunctionInfer, type Kind, type NeverCoalescing } from "../../common";
2
2
  import { type DataParserExtended } from "../baseExtended";
3
3
  import { type AddCheckersToDefinition, type MergeDefinition } from "../types";
4
4
  import * as dataParsers from "../parsers";
5
- import { type Output, type DataParser } from "../base";
6
- type _DataParserPipeExtended<GenericDefinition extends dataParsers.DataParserDefinitionPipe> = (dataParsers.DataParserPipe<GenericDefinition> & DataParserExtended);
5
+ import { type Input, type Output, type DataParser } from "../base";
6
+ type _DataParserPipeExtended<GenericDefinition extends dataParsers.DataParserDefinitionPipe> = (Kind<typeof dataParsers.pipeKind.definition> & DataParserExtended<GenericDefinition, Output<GenericDefinition["output"]>, Input<GenericDefinition["input"]>>);
7
7
  export interface DataParserPipeExtended<GenericDefinition extends dataParsers.DataParserDefinitionPipe = dataParsers.DataParserDefinitionPipe> extends _DataParserPipeExtended<GenericDefinition> {
8
8
  addChecker<GenericChecker extends readonly [
9
9
  dataParsers.DataParserPipeCheckers<Output<this>>,
@@ -1,9 +1,9 @@
1
- import { type FixDeepFunctionInfer, type NeverCoalescing } from "../../common";
1
+ import { type FixDeepFunctionInfer, type Kind, type NeverCoalescing } from "../../common";
2
2
  import { type DataParserExtended } from "../baseExtended";
3
3
  import { type AddCheckersToDefinition, type MergeDefinition } from "../types";
4
4
  import * as dataParsers from "../parsers";
5
- import { type Output, type DataParser } from "../base";
6
- type _DataParserRecordExtended<GenericDefinition extends dataParsers.DataParserDefinitionRecord> = (dataParsers.DataParserRecord<GenericDefinition> & DataParserExtended);
5
+ import { type Input, type Output, type DataParser } from "../base";
6
+ type _DataParserRecordExtended<GenericDefinition extends dataParsers.DataParserDefinitionRecord> = (Kind<typeof dataParsers.recordKind.definition> & DataParserExtended<GenericDefinition, Output<dataParsers.DataParserRecord<GenericDefinition>>, Input<dataParsers.DataParserRecord<GenericDefinition>>>);
7
7
  export interface DataParserRecordExtended<GenericDefinition extends dataParsers.DataParserDefinitionRecord = dataParsers.DataParserDefinitionRecord> extends _DataParserRecordExtended<GenericDefinition> {
8
8
  addChecker<GenericChecker extends readonly [
9
9
  dataParsers.DataParserRecordCheckers<Output<this>>,
@@ -1,9 +1,9 @@
1
- import { type FixDeepFunctionInfer, type NeverCoalescing } from "../../common";
1
+ import { type FixDeepFunctionInfer, type Kind, type NeverCoalescing } from "../../common";
2
2
  import { type DataParserExtended } from "../baseExtended";
3
3
  import { type AddCheckersToDefinition, type MergeDefinition } from "../types";
4
4
  import * as dataParsers from "../parsers";
5
- import { type Output, type DataParser } from "../base";
6
- type _DataParserRecoverExtended<GenericDefinition extends dataParsers.DataParserDefinitionRecover> = (dataParsers.DataParserRecover<GenericDefinition> & DataParserExtended);
5
+ import { type Input, type Output, type DataParser } from "../base";
6
+ type _DataParserRecoverExtended<GenericDefinition extends dataParsers.DataParserDefinitionRecover> = (Kind<typeof dataParsers.recoverKind.definition> & DataParserExtended<GenericDefinition, GenericDefinition["recoveredValue"], Input<GenericDefinition["inner"]>>);
7
7
  export interface DataParserRecoverExtended<GenericDefinition extends dataParsers.DataParserDefinitionRecover = dataParsers.DataParserDefinitionRecover> extends _DataParserRecoverExtended<GenericDefinition> {
8
8
  addChecker<GenericChecker extends readonly [
9
9
  dataParsers.DataParserRecoverCheckers<Output<this>>,
@@ -1,9 +1,9 @@
1
- import { type FixDeepFunctionInfer, type NeverCoalescing } from "../../common";
1
+ import { type FixDeepFunctionInfer, type Kind, type NeverCoalescing } from "../../common";
2
2
  import { type DataParserExtended } from "../baseExtended";
3
3
  import { type AddCheckersToDefinition, type MergeDefinition } from "../types";
4
4
  import * as dataParsers from "../parsers";
5
5
  import { type Output } from "../base";
6
- type _DataParserStringExtended<GenericDefinition extends dataParsers.DataParserDefinitionString> = (dataParsers.DataParserString<GenericDefinition> & DataParserExtended);
6
+ type _DataParserStringExtended<GenericDefinition extends dataParsers.DataParserDefinitionString> = (Kind<typeof dataParsers.stringKind.definition> & DataParserExtended<GenericDefinition, string, string>);
7
7
  export interface DataParserStringExtended<GenericDefinition extends dataParsers.DataParserDefinitionString = dataParsers.DataParserDefinitionString> extends _DataParserStringExtended<GenericDefinition> {
8
8
  addChecker<GenericChecker extends readonly [
9
9
  dataParsers.DataParserStringCheckers,
@@ -1,9 +1,9 @@
1
- import { type FixDeepFunctionInfer, type NeverCoalescing } from "../../common";
1
+ import { type FixDeepFunctionInfer, type Kind, type NeverCoalescing } from "../../common";
2
2
  import { type DataParserExtended } from "../baseExtended";
3
3
  import { type AddCheckersToDefinition, type MergeDefinition } from "../types";
4
4
  import * as dataParsers from "../parsers";
5
5
  import { type Output } from "../base";
6
- type _DataParserTemplateLiteralExtended<GenericDefinition extends dataParsers.DataParserDefinitionTemplateLiteral> = (dataParsers.DataParserTemplateLiteral<GenericDefinition> & DataParserExtended);
6
+ type _DataParserTemplateLiteralExtended<GenericDefinition extends dataParsers.DataParserDefinitionTemplateLiteral> = (Kind<typeof dataParsers.templateLiteralKind.definition> & DataParserExtended<GenericDefinition, dataParsers.TemplateLiteralShapeOutput<GenericDefinition["template"]>, dataParsers.TemplateLiteralShapeInput<GenericDefinition["template"]>>);
7
7
  export interface DataParserTemplateLiteralExtended<GenericDefinition extends dataParsers.DataParserDefinitionTemplateLiteral = dataParsers.DataParserDefinitionTemplateLiteral> extends _DataParserTemplateLiteralExtended<GenericDefinition> {
8
8
  addChecker<GenericChecker extends readonly [
9
9
  dataParsers.DataParserTemplateLiteralCheckers<Output<this>>,
@@ -1,10 +1,10 @@
1
- import { type FixDeepFunctionInfer, type NeverCoalescing } from "../../common";
1
+ import { type FixDeepFunctionInfer, type Kind, type NeverCoalescing } from "../../common";
2
2
  import { type DataParserExtended } from "../baseExtended";
3
3
  import { type AddCheckersToDefinition, type MergeDefinition } from "../types";
4
4
  import * as dataParsers from "../parsers";
5
- import { type DataParser, type Output } from "../base";
5
+ import { type DataParser, type Input, type Output } from "../base";
6
6
  import { type DataParserError } from "../error";
7
- type _DataParserTransformExtended<GenericDefinition extends dataParsers.DataParserDefinitionTransform> = (dataParsers.DataParserTransform<GenericDefinition> & DataParserExtended);
7
+ type _DataParserTransformExtended<GenericDefinition extends dataParsers.DataParserDefinitionTransform> = (Kind<typeof dataParsers.transformKind.definition> & DataParserExtended<GenericDefinition, Output<dataParsers.DataParserTransform<GenericDefinition>>, Input<GenericDefinition["inner"]>>);
8
8
  export interface DataParserTransformExtended<GenericDefinition extends dataParsers.DataParserDefinitionTransform = dataParsers.DataParserDefinitionTransform> extends _DataParserTransformExtended<GenericDefinition> {
9
9
  addChecker<GenericChecker extends readonly [
10
10
  dataParsers.DataParserTransformCheckers<Output<this>>,
@@ -1,9 +1,9 @@
1
- import { type FixDeepFunctionInfer, type NeverCoalescing } from "../../common";
1
+ import { type FixDeepFunctionInfer, type Kind, type NeverCoalescing } from "../../common";
2
2
  import { type DataParserExtended } from "../baseExtended";
3
3
  import { type AddCheckersToDefinition, type MergeDefinition } from "../types";
4
4
  import * as dataParsers from "../parsers";
5
- import { type Output } from "../base";
6
- type _DataParserTupleExtended<GenericDefinition extends dataParsers.DataParserDefinitionTuple> = (dataParsers.DataParserTuple<GenericDefinition> & DataParserExtended);
5
+ import { type Input, type Output } from "../base";
6
+ type _DataParserTupleExtended<GenericDefinition extends dataParsers.DataParserDefinitionTuple> = (Kind<typeof dataParsers.tupleKind.definition> & DataParserExtended<GenericDefinition, Output<dataParsers.DataParserTuple<GenericDefinition>>, Input<dataParsers.DataParserTuple<GenericDefinition>>>);
7
7
  export interface DataParserTupleExtended<GenericDefinition extends dataParsers.DataParserDefinitionTuple = dataParsers.DataParserDefinitionTuple> extends _DataParserTupleExtended<GenericDefinition> {
8
8
  addChecker<GenericChecker extends readonly [
9
9
  dataParsers.DataParserTupleCheckers<Output<this>>,
@@ -1,9 +1,9 @@
1
- import { type FixDeepFunctionInfer, type NeverCoalescing } from "../../common";
1
+ import { type FixDeepFunctionInfer, type Kind, type NeverCoalescing } from "../../common";
2
2
  import { type DataParserExtended } from "../baseExtended";
3
3
  import { type AddCheckersToDefinition, type MergeDefinition } from "../types";
4
4
  import * as dataParsers from "../parsers";
5
- import { type Output } from "../base";
6
- type _DataParserUnionExtended<GenericDefinition extends dataParsers.DataParserDefinitionUnion> = (dataParsers.DataParserUnion<GenericDefinition> & DataParserExtended);
5
+ import { type Input, type Output } from "../base";
6
+ type _DataParserUnionExtended<GenericDefinition extends dataParsers.DataParserDefinitionUnion> = (Kind<typeof dataParsers.unionKind.definition> & DataParserExtended<GenericDefinition, Output<dataParsers.DataParserUnion<GenericDefinition>>, Input<dataParsers.DataParserUnion<GenericDefinition>>>);
7
7
  export interface DataParserUnionExtended<GenericDefinition extends dataParsers.DataParserDefinitionUnion = dataParsers.DataParserDefinitionUnion> extends _DataParserUnionExtended<GenericDefinition> {
8
8
  addChecker<GenericChecker extends readonly [
9
9
  dataParsers.DataParserUnionCheckers<Output<this>>,
@@ -1,9 +1,9 @@
1
- import { type FixDeepFunctionInfer, type NeverCoalescing } from "../../common";
1
+ import { type FixDeepFunctionInfer, type Kind, type NeverCoalescing } from "../../common";
2
2
  import { type DataParserExtended } from "../baseExtended";
3
3
  import { type AddCheckersToDefinition, type MergeDefinition } from "../types";
4
4
  import * as dataParsers from "../parsers";
5
5
  import { type Output } from "../base";
6
- type _DataParserUnknownExtended<GenericDefinition extends dataParsers.DataParserDefinitionUnknown> = (dataParsers.DataParserUnknown<GenericDefinition> & DataParserExtended);
6
+ type _DataParserUnknownExtended<GenericDefinition extends dataParsers.DataParserDefinitionUnknown> = (Kind<typeof dataParsers.unknownKind.definition> & DataParserExtended<GenericDefinition, unknown, unknown>);
7
7
  export interface DataParserUnknownExtended<GenericDefinition extends dataParsers.DataParserDefinitionUnknown = dataParsers.DataParserDefinitionUnknown> extends _DataParserUnknownExtended<GenericDefinition> {
8
8
  addChecker<GenericChecker extends readonly [
9
9
  dataParsers.DataParserUnknownCheckers,