@layerzerolabs/typescript-utils 0.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (205) hide show
  1. package/.turbo/turbo-build.log +159 -0
  2. package/.turbo/turbo-lint.log +4 -0
  3. package/dist/3OBHE7MG.js +6 -0
  4. package/dist/3OBHE7MG.js.map +1 -0
  5. package/dist/44IBECAR.cjs +8 -0
  6. package/dist/44IBECAR.cjs.map +1 -0
  7. package/dist/4RNWLMHM.js +45 -0
  8. package/dist/4RNWLMHM.js.map +1 -0
  9. package/dist/62A6WP5R.js +6 -0
  10. package/dist/62A6WP5R.js.map +1 -0
  11. package/dist/7MFOZW3L.js +6 -0
  12. package/dist/7MFOZW3L.js.map +1 -0
  13. package/dist/AMF2EES3.cjs +1332 -0
  14. package/dist/AMF2EES3.cjs.map +1 -0
  15. package/dist/ATSF4XM5.cjs +8 -0
  16. package/dist/ATSF4XM5.cjs.map +1 -0
  17. package/dist/AYCOZKHR.js +8435 -0
  18. package/dist/AYCOZKHR.js.map +1 -0
  19. package/dist/B77ZZJ5J.cjs +8 -0
  20. package/dist/B77ZZJ5J.cjs.map +1 -0
  21. package/dist/BLALMGVL.js +6 -0
  22. package/dist/BLALMGVL.js.map +1 -0
  23. package/dist/BPWNPHCG.cjs +8 -0
  24. package/dist/BPWNPHCG.cjs.map +1 -0
  25. package/dist/C2AO2CD6.js +6 -0
  26. package/dist/C2AO2CD6.js.map +1 -0
  27. package/dist/DXU6T5SS.js +6 -0
  28. package/dist/DXU6T5SS.js.map +1 -0
  29. package/dist/FPWOFXCL.js +6 -0
  30. package/dist/FPWOFXCL.js.map +1 -0
  31. package/dist/FQTDMGIM.cjs +8 -0
  32. package/dist/FQTDMGIM.cjs.map +1 -0
  33. package/dist/GHCFU27L.js +6 -0
  34. package/dist/GHCFU27L.js.map +1 -0
  35. package/dist/GKC44C4P.cjs +8 -0
  36. package/dist/GKC44C4P.cjs.map +1 -0
  37. package/dist/HKAX3PXE.cjs +8 -0
  38. package/dist/HKAX3PXE.cjs.map +1 -0
  39. package/dist/HVKBLL5V.js +6 -0
  40. package/dist/HVKBLL5V.js.map +1 -0
  41. package/dist/JRGCWPQC.cjs +8 -0
  42. package/dist/JRGCWPQC.cjs.map +1 -0
  43. package/dist/KGYIWVDZ.cjs +8 -0
  44. package/dist/KGYIWVDZ.cjs.map +1 -0
  45. package/dist/KLHW5WN3.cjs +8 -0
  46. package/dist/KLHW5WN3.cjs.map +1 -0
  47. package/dist/M2FMGCRF.cjs +8 -0
  48. package/dist/M2FMGCRF.cjs.map +1 -0
  49. package/dist/MNZ3MKHF.js +6 -0
  50. package/dist/MNZ3MKHF.js.map +1 -0
  51. package/dist/N3MJTAM7.js +6 -0
  52. package/dist/N3MJTAM7.js.map +1 -0
  53. package/dist/Q3ERQ4ME.cjs +8438 -0
  54. package/dist/Q3ERQ4ME.cjs.map +1 -0
  55. package/dist/Q3ZAC463.js +6 -0
  56. package/dist/Q3ZAC463.js.map +1 -0
  57. package/dist/Q74ZLWCL.cjs +8 -0
  58. package/dist/Q74ZLWCL.cjs.map +1 -0
  59. package/dist/TDMZOP4J.js +6 -0
  60. package/dist/TDMZOP4J.js.map +1 -0
  61. package/dist/TML6PHUW.js +6 -0
  62. package/dist/TML6PHUW.js.map +1 -0
  63. package/dist/U7VZULNU.cjs +51 -0
  64. package/dist/U7VZULNU.cjs.map +1 -0
  65. package/dist/VLOINXK2.cjs +8 -0
  66. package/dist/VLOINXK2.cjs.map +1 -0
  67. package/dist/XM743A75.js +1326 -0
  68. package/dist/XM743A75.js.map +1 -0
  69. package/dist/Y53SFKBY.cjs +8 -0
  70. package/dist/Y53SFKBY.cjs.map +1 -0
  71. package/dist/ZLF3Y44J.cjs +8 -0
  72. package/dist/ZLF3Y44J.cjs.map +1 -0
  73. package/dist/ZPWIEOJR.js +6 -0
  74. package/dist/ZPWIEOJR.js.map +1 -0
  75. package/dist/advancedRecord.cjs +7 -0
  76. package/dist/advancedRecord.cjs.map +1 -0
  77. package/dist/advancedRecord.d.ts +10 -0
  78. package/dist/advancedRecord.d.ts.map +1 -0
  79. package/dist/advancedRecord.js +4 -0
  80. package/dist/advancedRecord.js.map +1 -0
  81. package/dist/branded.cjs +7 -0
  82. package/dist/branded.cjs.map +1 -0
  83. package/dist/branded.d.ts +22 -0
  84. package/dist/branded.d.ts.map +1 -0
  85. package/dist/branded.js +4 -0
  86. package/dist/branded.js.map +1 -0
  87. package/dist/constructor.cjs +7 -0
  88. package/dist/constructor.cjs.map +1 -0
  89. package/dist/constructor.d.ts +4 -0
  90. package/dist/constructor.d.ts.map +1 -0
  91. package/dist/constructor.js +4 -0
  92. package/dist/constructor.js.map +1 -0
  93. package/dist/deep.cjs +7 -0
  94. package/dist/deep.cjs.map +1 -0
  95. package/dist/deep.d.ts +22 -0
  96. package/dist/deep.d.ts.map +1 -0
  97. package/dist/deep.js +4 -0
  98. package/dist/deep.js.map +1 -0
  99. package/dist/deep.test-d.cjs +15 -0
  100. package/dist/deep.test-d.cjs.map +1 -0
  101. package/dist/deep.test-d.d.ts +2 -0
  102. package/dist/deep.test-d.d.ts.map +1 -0
  103. package/dist/deep.test-d.js +13 -0
  104. package/dist/deep.test-d.js.map +1 -0
  105. package/dist/disallowedAny.cjs +7 -0
  106. package/dist/disallowedAny.cjs.map +1 -0
  107. package/dist/disallowedAny.d.ts +5 -0
  108. package/dist/disallowedAny.d.ts.map +1 -0
  109. package/dist/disallowedAny.js +4 -0
  110. package/dist/disallowedAny.js.map +1 -0
  111. package/dist/identity.cjs +7 -0
  112. package/dist/identity.cjs.map +1 -0
  113. package/dist/identity.d.ts +2 -0
  114. package/dist/identity.d.ts.map +1 -0
  115. package/dist/identity.js +4 -0
  116. package/dist/identity.js.map +1 -0
  117. package/dist/index.cjs +23 -0
  118. package/dist/index.cjs.map +1 -0
  119. package/dist/index.d.ts +16 -0
  120. package/dist/index.d.ts.map +1 -0
  121. package/dist/index.js +21 -0
  122. package/dist/index.js.map +1 -0
  123. package/dist/lastOf.cjs +7 -0
  124. package/dist/lastOf.cjs.map +1 -0
  125. package/dist/lastOf.d.ts +7 -0
  126. package/dist/lastOf.d.ts.map +1 -0
  127. package/dist/lastOf.js +4 -0
  128. package/dist/lastOf.js.map +1 -0
  129. package/dist/merge.cjs +7 -0
  130. package/dist/merge.cjs.map +1 -0
  131. package/dist/merge.d.ts +7 -0
  132. package/dist/merge.d.ts.map +1 -0
  133. package/dist/merge.js +4 -0
  134. package/dist/merge.js.map +1 -0
  135. package/dist/methodOf.cjs +7 -0
  136. package/dist/methodOf.cjs.map +1 -0
  137. package/dist/methodOf.d.ts +7 -0
  138. package/dist/methodOf.d.ts.map +1 -0
  139. package/dist/methodOf.js +4 -0
  140. package/dist/methodOf.js.map +1 -0
  141. package/dist/removeNever.cjs +7 -0
  142. package/dist/removeNever.cjs.map +1 -0
  143. package/dist/removeNever.d.ts +4 -0
  144. package/dist/removeNever.d.ts.map +1 -0
  145. package/dist/removeNever.js +4 -0
  146. package/dist/removeNever.js.map +1 -0
  147. package/dist/strings.cjs +7 -0
  148. package/dist/strings.cjs.map +1 -0
  149. package/dist/strings.d.ts +27 -0
  150. package/dist/strings.d.ts.map +1 -0
  151. package/dist/strings.js +4 -0
  152. package/dist/strings.js.map +1 -0
  153. package/dist/strings.test-d.cjs +21 -0
  154. package/dist/strings.test-d.cjs.map +1 -0
  155. package/dist/strings.test-d.d.ts +2 -0
  156. package/dist/strings.test-d.d.ts.map +1 -0
  157. package/dist/strings.test-d.js +19 -0
  158. package/dist/strings.test-d.js.map +1 -0
  159. package/dist/tuples.cjs +7 -0
  160. package/dist/tuples.cjs.map +1 -0
  161. package/dist/tuples.d.ts +11 -0
  162. package/dist/tuples.d.ts.map +1 -0
  163. package/dist/tuples.js +4 -0
  164. package/dist/tuples.js.map +1 -0
  165. package/dist/valueOf.cjs +7 -0
  166. package/dist/valueOf.cjs.map +1 -0
  167. package/dist/valueOf.d.ts +12 -0
  168. package/dist/valueOf.d.ts.map +1 -0
  169. package/dist/valueOf.js +4 -0
  170. package/dist/valueOf.js.map +1 -0
  171. package/dist/viem.cjs +7 -0
  172. package/dist/viem.cjs.map +1 -0
  173. package/dist/viem.d.ts +186 -0
  174. package/dist/viem.d.ts.map +1 -0
  175. package/dist/viem.js +4 -0
  176. package/dist/viem.js.map +1 -0
  177. package/dist/withRequired.cjs +7 -0
  178. package/dist/withRequired.cjs.map +1 -0
  179. package/dist/withRequired.d.ts +7 -0
  180. package/dist/withRequired.d.ts.map +1 -0
  181. package/dist/withRequired.js +4 -0
  182. package/dist/withRequired.js.map +1 -0
  183. package/package.json +32 -0
  184. package/src/advancedRecord.ts +20 -0
  185. package/src/branded.ts +19 -0
  186. package/src/constructor.ts +1 -0
  187. package/src/deep.test-d.ts +33 -0
  188. package/src/deep.ts +26 -0
  189. package/src/disallowedAny.ts +5 -0
  190. package/src/identity.ts +2 -0
  191. package/src/index.ts +15 -0
  192. package/src/lastOf.ts +15 -0
  193. package/src/merge.ts +13 -0
  194. package/src/methodOf.ts +7 -0
  195. package/src/removeNever.ts +3 -0
  196. package/src/strings.test-d.ts +32 -0
  197. package/src/strings.ts +42 -0
  198. package/src/tuples.ts +49 -0
  199. package/src/valueOf.ts +16 -0
  200. package/src/viem.ts +275 -0
  201. package/src/withRequired.ts +5 -0
  202. package/test/disallowedAny.test.ts +54 -0
  203. package/test/merge.test.ts +27 -0
  204. package/tsconfig.json +20 -0
  205. package/tsup.config.ts +8 -0
@@ -0,0 +1,16 @@
1
+ export * from './advancedRecord';
2
+ export * from './branded';
3
+ export * from './constructor';
4
+ export * from './deep';
5
+ export * from './disallowedAny';
6
+ export * from './identity';
7
+ export * from './lastOf';
8
+ export * from './merge';
9
+ export * from './methodOf';
10
+ export * from './removeNever';
11
+ export * from './strings';
12
+ export * from './tuples';
13
+ export * from './valueOf';
14
+ export * from './viem';
15
+ export * from './withRequired';
16
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC;AACjC,cAAc,WAAW,CAAC;AAC1B,cAAc,eAAe,CAAC;AAC9B,cAAc,QAAQ,CAAC;AACvB,cAAc,iBAAiB,CAAC;AAChC,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,YAAY,CAAC;AAC3B,cAAc,eAAe,CAAC;AAC9B,cAAc,WAAW,CAAC;AAC1B,cAAc,UAAU,CAAC;AACzB,cAAc,WAAW,CAAC;AAC1B,cAAc,QAAQ,CAAC;AACvB,cAAc,gBAAgB,CAAC"}
package/dist/index.js ADDED
@@ -0,0 +1,21 @@
1
+ import './GHCFU27L.js';
2
+ import './62A6WP5R.js';
3
+ import './TDMZOP4J.js';
4
+ import './HVKBLL5V.js';
5
+ import './C2AO2CD6.js';
6
+ import './FPWOFXCL.js';
7
+ import './7MFOZW3L.js';
8
+ import './BLALMGVL.js';
9
+ import './ZPWIEOJR.js';
10
+ import './Q3ZAC463.js';
11
+ import './DXU6T5SS.js';
12
+ import './3OBHE7MG.js';
13
+ import './TML6PHUW.js';
14
+ import './N3MJTAM7.js';
15
+ import './MNZ3MKHF.js';
16
+ import { init_esm_shims } from './4RNWLMHM.js';
17
+
18
+ // src/index.ts
19
+ init_esm_shims();
20
+ //# sourceMappingURL=index.js.map
21
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAAA,cAAA,EAAA","file":"index.js","sourcesContent":["export * from './advancedRecord';\nexport * from './branded';\nexport * from './constructor';\nexport * from './deep';\nexport * from './disallowedAny';\nexport * from './identity';\nexport * from './lastOf';\nexport * from './merge';\nexport * from './methodOf';\nexport * from './removeNever';\nexport * from './strings';\nexport * from './tuples';\nexport * from './valueOf';\nexport * from './viem';\nexport * from './withRequired';\n"]}
@@ -0,0 +1,7 @@
1
+ 'use strict';
2
+
3
+ require('./Q74ZLWCL.cjs');
4
+ require('./U7VZULNU.cjs');
5
+
6
+ //# sourceMappingURL=lastOf.cjs.map
7
+ //# sourceMappingURL=lastOf.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","file":"lastOf.cjs"}
@@ -0,0 +1,7 @@
1
+ export type UnionToIntersection<U> = (U extends any ? (k: U) => void : never) extends (k: infer I) => void ? I : never;
2
+ export type LastOf<T> = UnionToIntersection<T extends any ? () => T : never> extends () => infer R ? R : never;
3
+ type Prepend<T, U extends any[]> = [T, ...U];
4
+ export type UnionToArray<T, U extends any[] = []> = LastOf<T> extends never ? U : UnionToArray<Exclude<T, LastOf<T>>, Prepend<LastOf<T>, U>>;
5
+ export type RestOf<T> = Exclude<T, LastOf<T>>;
6
+ export {};
7
+ //# sourceMappingURL=lastOf.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lastOf.d.ts","sourceRoot":"","sources":["../src/lastOf.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,mBAAmB,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,GAAG,GAAG,CAAC,CAAC,EAAE,CAAC,KAAK,IAAI,GAAG,KAAK,CAAC,SAAS,CAClF,CAAC,EAAE,MAAM,CAAC,KACT,IAAI,GACH,CAAC,GACD,KAAK,CAAC;AAEZ,MAAM,MAAM,MAAM,CAAC,CAAC,IAChB,mBAAmB,CAAC,CAAC,SAAS,GAAG,GAAG,MAAM,CAAC,GAAG,KAAK,CAAC,SAAS,MAAM,MAAM,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;AAE3F,KAAK,OAAO,CAAC,CAAC,EAAE,CAAC,SAAS,GAAG,EAAE,IAAI,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;AAE7C,MAAM,MAAM,YAAY,CAAC,CAAC,EAAE,CAAC,SAAS,GAAG,EAAE,GAAG,EAAE,IAC5C,MAAM,CAAC,CAAC,CAAC,SAAS,KAAK,GAAG,CAAC,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AAE7F,MAAM,MAAM,MAAM,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC"}
package/dist/lastOf.js ADDED
@@ -0,0 +1,4 @@
1
+ import './TDMZOP4J.js';
2
+ import './4RNWLMHM.js';
3
+ //# sourceMappingURL=lastOf.js.map
4
+ //# sourceMappingURL=lastOf.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","file":"lastOf.js"}
package/dist/merge.cjs ADDED
@@ -0,0 +1,7 @@
1
+ 'use strict';
2
+
3
+ require('./Y53SFKBY.cjs');
4
+ require('./U7VZULNU.cjs');
5
+
6
+ //# sourceMappingURL=merge.cjs.map
7
+ //# sourceMappingURL=merge.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","file":"merge.cjs"}
@@ -0,0 +1,7 @@
1
+ import type { Prettify } from './viem';
2
+ export type Merge<T, U> = {} extends T ? U : {} extends U ? T : Prettify<{
3
+ [key in keyof T]: key extends keyof U ? U[key] : T[key];
4
+ } & {
5
+ [key in keyof U]: U[key];
6
+ }>;
7
+ //# sourceMappingURL=merge.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"merge.d.ts","sourceRoot":"","sources":["../src/merge.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAEvC,MAAM,MAAM,KAAK,CAAC,CAAC,EAAE,CAAC,IAAI,EAAE,SAAS,CAAC,GAChC,CAAC,GACD,EAAE,SAAS,CAAC,GACV,CAAC,GACD,QAAQ,CACJ;KACK,GAAG,IAAI,MAAM,CAAC,GAAG,GAAG,SAAS,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC;CAC1D,GAAG;KACC,GAAG,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC;CAC3B,CACJ,CAAC"}
package/dist/merge.js ADDED
@@ -0,0 +1,4 @@
1
+ import './HVKBLL5V.js';
2
+ import './4RNWLMHM.js';
3
+ //# sourceMappingURL=merge.js.map
4
+ //# sourceMappingURL=merge.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","file":"merge.js"}
@@ -0,0 +1,7 @@
1
+ 'use strict';
2
+
3
+ require('./FQTDMGIM.cjs');
4
+ require('./U7VZULNU.cjs');
5
+
6
+ //# sourceMappingURL=methodOf.cjs.map
7
+ //# sourceMappingURL=methodOf.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","file":"methodOf.cjs"}
@@ -0,0 +1,7 @@
1
+ export type MethodOf<T> = {
2
+ [key in keyof T]: T[key] extends (...args: any[]) => any ? T[key] : never;
3
+ }[keyof T];
4
+ export type MethodNameOf<T> = {
5
+ [key in keyof T]: T[key] extends (...args: any[]) => any ? key : never;
6
+ }[keyof T];
7
+ //# sourceMappingURL=methodOf.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"methodOf.d.ts","sourceRoot":"","sources":["../src/methodOf.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,QAAQ,CAAC,CAAC,IAAI;KACrB,GAAG,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK;CAC5E,CAAC,MAAM,CAAC,CAAC,CAAC;AAEX,MAAM,MAAM,YAAY,CAAC,CAAC,IAAI;KACzB,GAAG,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,GAAG,GAAG,GAAG,KAAK;CACzE,CAAC,MAAM,CAAC,CAAC,CAAC"}
@@ -0,0 +1,4 @@
1
+ import './C2AO2CD6.js';
2
+ import './4RNWLMHM.js';
3
+ //# sourceMappingURL=methodOf.js.map
4
+ //# sourceMappingURL=methodOf.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","file":"methodOf.js"}
@@ -0,0 +1,7 @@
1
+ 'use strict';
2
+
3
+ require('./JRGCWPQC.cjs');
4
+ require('./U7VZULNU.cjs');
5
+
6
+ //# sourceMappingURL=removeNever.cjs.map
7
+ //# sourceMappingURL=removeNever.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","file":"removeNever.cjs"}
@@ -0,0 +1,4 @@
1
+ export type RemoveNever<T> = {
2
+ [K in keyof T as T[K] extends never ? never : K]: T[K];
3
+ };
4
+ //# sourceMappingURL=removeNever.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"removeNever.d.ts","sourceRoot":"","sources":["../src/removeNever.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,WAAW,CAAC,CAAC,IAAI;KACxB,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,KAAK,GAAG,KAAK,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CACzD,CAAC"}
@@ -0,0 +1,4 @@
1
+ import './FPWOFXCL.js';
2
+ import './4RNWLMHM.js';
3
+ //# sourceMappingURL=removeNever.js.map
4
+ //# sourceMappingURL=removeNever.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","file":"removeNever.js"}
@@ -0,0 +1,7 @@
1
+ 'use strict';
2
+
3
+ require('./KLHW5WN3.cjs');
4
+ require('./U7VZULNU.cjs');
5
+
6
+ //# sourceMappingURL=strings.cjs.map
7
+ //# sourceMappingURL=strings.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","file":"strings.cjs"}
@@ -0,0 +1,27 @@
1
+ import type { Branded } from './branded';
2
+ /**
3
+ * Guarantees that a string does not end with a suffix.
4
+ * You can remove multiple suffixes by using a union.
5
+ *
6
+ * @example
7
+ * type A = StringWithoutSuffix<'hello', 'world'>; // 'hello'
8
+ * type B = StringWithoutSuffix<'hello', 'lo'>; // never
9
+ * type C = StringWithoutSuffix<'hello world', 'lo' | 'world'>; // never
10
+ */
11
+ export type StringWithoutSuffix<T extends string, Suffix extends string> = T extends `${infer _}${Suffix}` ? never : T;
12
+ export type HexString = `0x${string}`;
13
+ export declare const _NormalizedHexString: unique symbol;
14
+ export type NormalizedHexString = Branded<typeof _NormalizedHexString, 'NormalizedHexString'>;
15
+ /**
16
+ * Guarantees that a hex string is trimmed.
17
+ *
18
+ * @example
19
+ * type A = HexStringIsTrimmed<'0x0'>; // true
20
+ * type B = HexStringIsTrimmed<'0x00'>; // false
21
+ * type C = HexStringIsTrimmed<'0x'>; // false
22
+ * type D = HexStringIsTrimmed<'0x100'>; // true
23
+ */
24
+ export type HexStringIsTrimmed<T extends HexString> = T extends '0x0' ? true : T extends '0x' ? false : T extends `0x0${string}` ? false : true;
25
+ export declare const _NumberString: unique symbol;
26
+ export type DecimalString = Branded<typeof _NumberString, 'DecimalString'>;
27
+ //# sourceMappingURL=strings.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"strings.d.ts","sourceRoot":"","sources":["../src/strings.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEzC;;;;;;;;GAQG;AACH,MAAM,MAAM,mBAAmB,CAC3B,CAAC,SAAS,MAAM,EAChB,MAAM,SAAS,MAAM,IACrB,CAAC,SAAS,GAAG,MAAM,CAAC,GAAG,MAAM,EAAE,GAAG,KAAK,GAAG,CAAC,CAAC;AAEhD,MAAM,MAAM,SAAS,GAAG,KAAK,MAAM,EAAE,CAAC;AAEtC,MAAM,CAAC,OAAO,CAAC,MAAM,oBAAoB,EAAE,OAAO,MAAM,CAAC;AAEzD,MAAM,MAAM,mBAAmB,GAAG,OAAO,CAAC,OAAO,oBAAoB,EAAE,qBAAqB,CAAC,CAAC;AAE9F;;;;;;;;GAQG;AACH,MAAM,MAAM,kBAAkB,CAAC,CAAC,SAAS,SAAS,IAAI,CAAC,SAAS,KAAK,GAC/D,IAAI,GACJ,CAAC,SAAS,IAAI,GACZ,KAAK,GACL,CAAC,SAAS,MAAM,MAAM,EAAE,GACtB,KAAK,GACL,IAAI,CAAC;AAEf,MAAM,CAAC,OAAO,CAAC,MAAM,aAAa,EAAE,OAAO,MAAM,CAAC;AAElD,MAAM,MAAM,aAAa,GAAG,OAAO,CAAC,OAAO,aAAa,EAAE,eAAe,CAAC,CAAC"}
@@ -0,0 +1,4 @@
1
+ import './7MFOZW3L.js';
2
+ import './4RNWLMHM.js';
3
+ //# sourceMappingURL=strings.js.map
4
+ //# sourceMappingURL=strings.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","file":"strings.js"}
@@ -0,0 +1,21 @@
1
+ 'use strict';
2
+
3
+ var Q3ERQ4ME_cjs = require('./Q3ERQ4ME.cjs');
4
+ var U7VZULNU_cjs = require('./U7VZULNU.cjs');
5
+
6
+ // src/strings.test-d.ts
7
+ U7VZULNU_cjs.init_cjs_shims();
8
+ Q3ERQ4ME_cjs.test("StringWithoutSuffix", () => {
9
+ (0, Q3ERQ4ME_cjs.import_expect_type.expectTypeOf)().toBeString();
10
+ (0, Q3ERQ4ME_cjs.import_expect_type.expectTypeOf)().toBeNever();
11
+ (0, Q3ERQ4ME_cjs.import_expect_type.expectTypeOf)().toBeNever();
12
+ (0, Q3ERQ4ME_cjs.import_expect_type.expectTypeOf)().toBeNever();
13
+ (0, Q3ERQ4ME_cjs.import_expect_type.expectTypeOf)().toBeString();
14
+ });
15
+ Q3ERQ4ME_cjs.test("HexStringIsTrimmed", () => {
16
+ (0, Q3ERQ4ME_cjs.import_expect_type.expectTypeOf)().toExtend();
17
+ (0, Q3ERQ4ME_cjs.import_expect_type.expectTypeOf)().toExtend();
18
+ (0, Q3ERQ4ME_cjs.import_expect_type.expectTypeOf)().toExtend();
19
+ });
20
+ //# sourceMappingURL=strings.test-d.cjs.map
21
+ //# sourceMappingURL=strings.test-d.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/strings.test-d.ts"],"names":["init_cjs_shims","test","expectTypeOf","toBeString","toBeNever","toExtend"],"mappings":";;;;;;AAAAA,2BAAA,EAAA;AAIAC,iBAAAA,CAAK,uBAAuB,MAAA;AAExBC,EAAAA,IAAAA,+BAAAA,CAAAA,YAAAA,IAAkBC,UAAAA,EAAU;AAG5BD,EAAAA,IAAAA,+BAAAA,CAAAA,YAAAA,IAAkBE,SAAAA,EAAS;AAI3BF,EAAAA,IAAAA,+BAAAA,CAAAA,YAAAA,IAAkBE,SAAAA,EAAS;AAG3BF,EAAAA,IAAAA,+BAAAA,CAAAA,YAAAA,IAAkBE,SAAAA,EAAS;AAG3BF,EAAAA,IAAAA,+BAAAA,CAAAA,YAAAA,IAAkBC,UAAAA,EAAU;AAChC,CAAA,CAAA;AAEAF,iBAAAA,CAAK,sBAAsB,MAAA;AAEvBC,EAAAA,IAAAA,+BAAAA,CAAAA,YAAAA,IAAkBG,QAAAA,EAAQ;AAG1BH,EAAAA,IAAAA,+BAAAA,CAAAA,YAAAA,IAAkBG,QAAAA,EAAQ;AAG1BH,EAAAA,IAAAA,+BAAAA,CAAAA,YAAAA,IAAkBG,QAAAA,EAAQ;AAC9B,CAAA,CAAA","file":"strings.test-d.cjs","sourcesContent":["import { expectTypeOf, test } from 'vitest';\n\nimport type { HexStringIsTrimmed, StringWithoutSuffix } from './strings';\n\ntest('StringWithoutSuffix', () => {\n type A = StringWithoutSuffix<'hello', 'world'>;\n expectTypeOf<A>().toBeString();\n\n type B = StringWithoutSuffix<'hello', 'lo'>;\n expectTypeOf<B>().toBeNever();\n\n // Multiple suffixes test:\n type C = StringWithoutSuffix<'hello', 'lo' | 'world'>;\n expectTypeOf<C>().toBeNever();\n\n type D = StringWithoutSuffix<'hello world', 'lo' | 'world'>;\n expectTypeOf<D>().toBeNever();\n\n type E = StringWithoutSuffix<'hello world!', 'lo' | 'world'>;\n expectTypeOf<E>().toBeString();\n});\n\ntest('HexStringIsTrimmed', () => {\n type A = HexStringIsTrimmed<'0x0'>;\n expectTypeOf<A>().toExtend<true>();\n\n type B = HexStringIsTrimmed<'0x00'>;\n expectTypeOf<B>().toExtend<false>();\n\n type C = HexStringIsTrimmed<'0x'>;\n expectTypeOf<C>().toExtend<false>();\n});\n"]}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=strings.test-d.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"strings.test-d.d.ts","sourceRoot":"","sources":["../src/strings.test-d.ts"],"names":[],"mappings":""}
@@ -0,0 +1,19 @@
1
+ import { test, import_expect_type } from './AYCOZKHR.js';
2
+ import { init_esm_shims } from './4RNWLMHM.js';
3
+
4
+ // src/strings.test-d.ts
5
+ init_esm_shims();
6
+ test("StringWithoutSuffix", () => {
7
+ (0, import_expect_type.expectTypeOf)().toBeString();
8
+ (0, import_expect_type.expectTypeOf)().toBeNever();
9
+ (0, import_expect_type.expectTypeOf)().toBeNever();
10
+ (0, import_expect_type.expectTypeOf)().toBeNever();
11
+ (0, import_expect_type.expectTypeOf)().toBeString();
12
+ });
13
+ test("HexStringIsTrimmed", () => {
14
+ (0, import_expect_type.expectTypeOf)().toExtend();
15
+ (0, import_expect_type.expectTypeOf)().toExtend();
16
+ (0, import_expect_type.expectTypeOf)().toExtend();
17
+ });
18
+ //# sourceMappingURL=strings.test-d.js.map
19
+ //# sourceMappingURL=strings.test-d.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/strings.test-d.ts"],"names":["test","expectTypeOf","toBeString","toBeNever","toExtend"],"mappings":";;;;AAAA,cAAA,EAAA;AAIAA,IAAAA,CAAK,uBAAuB,MAAA;AAExBC,EAAAA,IAAAA,kBAAAA,CAAAA,YAAAA,IAAkBC,UAAAA,EAAU;AAG5BD,EAAAA,IAAAA,kBAAAA,CAAAA,YAAAA,IAAkBE,SAAAA,EAAS;AAI3BF,EAAAA,IAAAA,kBAAAA,CAAAA,YAAAA,IAAkBE,SAAAA,EAAS;AAG3BF,EAAAA,IAAAA,kBAAAA,CAAAA,YAAAA,IAAkBE,SAAAA,EAAS;AAG3BF,EAAAA,IAAAA,kBAAAA,CAAAA,YAAAA,IAAkBC,UAAAA,EAAU;AAChC,CAAA,CAAA;AAEAF,IAAAA,CAAK,sBAAsB,MAAA;AAEvBC,EAAAA,IAAAA,kBAAAA,CAAAA,YAAAA,IAAkBG,QAAAA,EAAQ;AAG1BH,EAAAA,IAAAA,kBAAAA,CAAAA,YAAAA,IAAkBG,QAAAA,EAAQ;AAG1BH,EAAAA,IAAAA,kBAAAA,CAAAA,YAAAA,IAAkBG,QAAAA,EAAQ;AAC9B,CAAA,CAAA","file":"strings.test-d.js","sourcesContent":["import { expectTypeOf, test } from 'vitest';\n\nimport type { HexStringIsTrimmed, StringWithoutSuffix } from './strings';\n\ntest('StringWithoutSuffix', () => {\n type A = StringWithoutSuffix<'hello', 'world'>;\n expectTypeOf<A>().toBeString();\n\n type B = StringWithoutSuffix<'hello', 'lo'>;\n expectTypeOf<B>().toBeNever();\n\n // Multiple suffixes test:\n type C = StringWithoutSuffix<'hello', 'lo' | 'world'>;\n expectTypeOf<C>().toBeNever();\n\n type D = StringWithoutSuffix<'hello world', 'lo' | 'world'>;\n expectTypeOf<D>().toBeNever();\n\n type E = StringWithoutSuffix<'hello world!', 'lo' | 'world'>;\n expectTypeOf<E>().toBeString();\n});\n\ntest('HexStringIsTrimmed', () => {\n type A = HexStringIsTrimmed<'0x0'>;\n expectTypeOf<A>().toExtend<true>();\n\n type B = HexStringIsTrimmed<'0x00'>;\n expectTypeOf<B>().toExtend<false>();\n\n type C = HexStringIsTrimmed<'0x'>;\n expectTypeOf<C>().toExtend<false>();\n});\n"]}
@@ -0,0 +1,7 @@
1
+ 'use strict';
2
+
3
+ require('./GKC44C4P.cjs');
4
+ require('./U7VZULNU.cjs');
5
+
6
+ //# sourceMappingURL=tuples.cjs.map
7
+ //# sourceMappingURL=tuples.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","file":"tuples.cjs"}
@@ -0,0 +1,11 @@
1
+ import type { BrandedError } from './branded';
2
+ export type IsComplete<T extends readonly (string | number | symbol)[], K extends string | number | symbol> = Exclude<K, T[number]> extends never ? true : false;
3
+ export type TryGetDuplicate<T extends readonly (string | number | symbol)[], Seen extends (string | number | symbol)[] = []> = T extends [infer Head, ...infer Tail] ? Head extends Seen[number] ? Head : Head extends string | number | symbol ? Tail extends readonly (string | number | symbol)[] ? TryGetDuplicate<Tail, [...Seen, Head]> : false : false : false;
4
+ export type AssertUniqueCompleteSet<T extends readonly (string | number | symbol)[], AllKeys extends string | number | symbol> = IsComplete<T, AllKeys> extends false ? BrandedError<`Missing key: ${Exclude<AllKeys extends Symbol ? 'ERR' : AllKeys, T[number]>}`> : TryGetDuplicate<T> extends false ? T : BrandedError<`Duplicate key found: ${TryGetDuplicate<T>}`>;
5
+ type BuildTupleHelper<Element, Length extends number, Rest extends Element[]> = Rest['length'] extends Length ? readonly [...Rest] : BuildTupleHelper<Element, Length, [Element, ...Rest]>;
6
+ export type BuildTuple<Element, Length extends number> = number extends Length ? readonly Element[] : BuildTupleHelper<Element, Length, []>;
7
+ export type TuplesToObject<T extends readonly (readonly [PropertyKey, any])[]> = {
8
+ [K in T[number] as K[0]]: K[1];
9
+ };
10
+ export {};
11
+ //# sourceMappingURL=tuples.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tuples.d.ts","sourceRoot":"","sources":["../src/tuples.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAG9C,MAAM,MAAM,UAAU,CAClB,CAAC,SAAS,SAAS,CAAC,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC,EAAE,EAC/C,CAAC,SAAS,MAAM,GAAG,MAAM,GAAG,MAAM,IAClC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,SAAS,KAAK,GAAG,IAAI,GAAG,KAAK,CAAC;AAEvD,MAAM,MAAM,eAAe,CACvB,CAAC,SAAS,SAAS,CAAC,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC,EAAE,EAC/C,IAAI,SAAS,CAAC,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC,EAAE,GAAG,EAAE,IAC9C,CAAC,SAAS,CAAC,MAAM,IAAI,EAAE,GAAG,MAAM,IAAI,CAAC,GACnC,IAAI,SAAS,IAAI,CAAC,MAAM,CAAC,GACrB,IAAI,GACJ,IAAI,SAAS,MAAM,GAAG,MAAM,GAAG,MAAM,GACnC,IAAI,SAAS,SAAS,CAAC,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC,EAAE,GAC9C,eAAe,CAAC,IAAI,EAAE,CAAC,GAAG,IAAI,EAAE,IAAI,CAAC,CAAC,GACtC,KAAK,GACT,KAAK,GACX,KAAK,CAAC;AAIZ,MAAM,MAAM,uBAAuB,CAC/B,CAAC,SAAS,SAAS,CAAC,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC,EAAE,EAC/C,OAAO,SAAS,MAAM,GAAG,MAAM,GAAG,MAAM,IAExC,UAAU,CAAC,CAAC,EAAE,OAAO,CAAC,SAAS,KAAK,GAC9B,YAAY,CAAC,gBAAgB,OAAO,CAAC,OAAO,SAAS,MAAM,GAAG,KAAK,GAAG,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,GAC5F,eAAe,CAAC,CAAC,CAAC,SAAS,KAAK,GAC9B,CAAC,GACD,YAAY,CAAC,wBAAwB,eAAe,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;AAEvE,KAAK,gBAAgB,CACjB,OAAO,EACP,MAAM,SAAS,MAAM,EACrB,IAAI,SAAS,OAAO,EAAE,IACtB,IAAI,CAAC,QAAQ,CAAC,SAAS,MAAM,GAC3B,SAAS,CAAC,GAAG,IAAI,CAAC,GAClB,gBAAgB,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC;AAE5D,MAAM,MAAM,UAAU,CAAC,OAAO,EAAE,MAAM,SAAS,MAAM,IAAI,MAAM,SAAS,MAAM,GAExE,SAAS,OAAO,EAAE,GAClB,gBAAgB,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC;AAE5C,MAAM,MAAM,cAAc,CAAC,CAAC,SAAS,SAAS,CAAC,SAAS,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC,EAAE,IAAI;KAC5E,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CACjC,CAAC"}
package/dist/tuples.js ADDED
@@ -0,0 +1,4 @@
1
+ import './BLALMGVL.js';
2
+ import './4RNWLMHM.js';
3
+ //# sourceMappingURL=tuples.js.map
4
+ //# sourceMappingURL=tuples.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","file":"tuples.js"}
@@ -0,0 +1,7 @@
1
+ 'use strict';
2
+
3
+ require('./M2FMGCRF.cjs');
4
+ require('./U7VZULNU.cjs');
5
+
6
+ //# sourceMappingURL=valueOf.cjs.map
7
+ //# sourceMappingURL=valueOf.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","file":"valueOf.cjs"}
@@ -0,0 +1,12 @@
1
+ export type IntersectionValueOf<T> = (T[keyof T] extends infer U ? (U extends any ? (x: U) => void : never) : never) extends (x: infer I) => void ? I : never;
2
+ /**
3
+ * @description Creates a type that extracts the values of T.
4
+ *
5
+ * @example
6
+ * ValueOf<{ a: string, b: number }>
7
+ * => string | number
8
+ *
9
+ * @internal
10
+ */
11
+ export type ValueOf<T> = T[keyof T];
12
+ //# sourceMappingURL=valueOf.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"valueOf.d.ts","sourceRoot":"","sources":["../src/valueOf.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,mBAAmB,CAAC,CAAC,IAAI,CACjC,CAAC,CAAC,MAAM,CAAC,CAAC,SAAS,MAAM,CAAC,GAAG,CAAC,CAAC,SAAS,GAAG,GAAG,CAAC,CAAC,EAAE,CAAC,KAAK,IAAI,GAAG,KAAK,CAAC,GAAG,KAAK,CAChF,SAAS,CAAC,CAAC,EAAE,MAAM,CAAC,KAAK,IAAI,GACxB,CAAC,GACD,KAAK,CAAC;AAEZ;;;;;;;;GAQG;AACH,MAAM,MAAM,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC"}
@@ -0,0 +1,4 @@
1
+ import './ZPWIEOJR.js';
2
+ import './4RNWLMHM.js';
3
+ //# sourceMappingURL=valueOf.js.map
4
+ //# sourceMappingURL=valueOf.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","file":"valueOf.js"}
package/dist/viem.cjs ADDED
@@ -0,0 +1,7 @@
1
+ 'use strict';
2
+
3
+ require('./ATSF4XM5.cjs');
4
+ require('./U7VZULNU.cjs');
5
+
6
+ //# sourceMappingURL=viem.cjs.map
7
+ //# sourceMappingURL=viem.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","file":"viem.cjs"}
package/dist/viem.d.ts ADDED
@@ -0,0 +1,186 @@
1
+ /**
2
+ * Filters out all members of {@link T} that are not {@link P}
3
+ *
4
+ * @param T - Items to filter
5
+ * @param P - Type to filter out
6
+ * @returns Filtered items
7
+ *
8
+ * @example
9
+ * type Result = Filter<['a', 'b', 'c'], 'b'>
10
+ * // ^? type Result = ['a', 'c']
11
+ */
12
+ export type Filter<T extends readonly unknown[], P, Acc extends readonly unknown[] = []> = T extends readonly [infer F, ...infer Rest extends readonly unknown[]] ? [F] extends [P] ? Filter<Rest, P, [...Acc, F]> : Filter<Rest, P, Acc> : readonly [...Acc];
13
+ /**
14
+ * @description Checks if {@link T} can be narrowed further than {@link U}
15
+ * @param T - Type to check
16
+ * @param U - Type to against
17
+ * @example
18
+ * type Result = IsNarrowable<'foo', string>
19
+ * // ^? true
20
+ */
21
+ export type IsNarrowable<T, U> = IsNever<(T extends U ? true : false) & (U extends T ? false : true)> extends true ? false : true;
22
+ /**
23
+ * @description Checks if {@link T} is `never`
24
+ * @param T - Type to check
25
+ * @example
26
+ * type Result = IsNever<never>
27
+ * // ^? type Result = true
28
+ */
29
+ export type IsNever<T> = [T] extends [never] ? true : false;
30
+ /** Removes `readonly` from all properties of an object. */
31
+ export type Mutable<type extends object> = {
32
+ -readonly [key in keyof type]: type[key];
33
+ };
34
+ /**
35
+ * @description Evaluates boolean "or" condition for {@link T} properties.
36
+ * @param T - Type to check
37
+ *
38
+ * * @example
39
+ * type Result = Or<[false, true, false]>
40
+ * // ^? type Result = true
41
+ *
42
+ * @example
43
+ * type Result = Or<[false, false, false]>
44
+ * // ^? type Result = false
45
+ */
46
+ export type Or<T extends readonly unknown[]> = T extends readonly [infer Head, ...infer Tail] ? Head extends true ? true : Or<Tail> : false;
47
+ /**
48
+ * @description Checks if {@link T} is `undefined`
49
+ * @param T - Type to check
50
+ * @example
51
+ * type Result = IsUndefined<undefined>
52
+ * // ^? type Result = true
53
+ */
54
+ export type IsUndefined<T> = [undefined] extends [T] ? true : false;
55
+ export type MaybePromise<T> = T | Promise<T>;
56
+ /**
57
+ * @description Makes attributes on the type T required if required is true.
58
+ *
59
+ * @example
60
+ * MaybeRequired<{ a: string, b?: number }, true>
61
+ * => { a: string, b: number }
62
+ *
63
+ * MaybeRequired<{ a: string, b?: number }, false>
64
+ * => { a: string, b?: number }
65
+ */
66
+ export type MaybeRequired<T, required extends boolean> = required extends true ? ExactRequired<T> : T;
67
+ /**
68
+ * @description Assigns the properties of U onto T.
69
+ *
70
+ * @example
71
+ * Assign<{ a: string, b: number }, { a: undefined, c: boolean }>
72
+ * => { a: undefined, b: number, c: boolean }
73
+ */
74
+ export type Assign<T, U> = Assign_<T, U> & U;
75
+ type Assign_<T, U> = {
76
+ [K in keyof T as K extends keyof U ? (U[K] extends void ? never : K) : K]: K extends keyof U ? U[K] : T[K];
77
+ };
78
+ export type NoInfer<type> = [type][type extends any ? 0 : never];
79
+ /**
80
+ * @description Constructs a type by excluding `undefined` from `T`.
81
+ *
82
+ * @example
83
+ * NoUndefined<string | undefined>
84
+ * => string
85
+ *
86
+ * @internal
87
+ */
88
+ export type NoUndefined<T> = T extends undefined ? never : T;
89
+ /** Strict version of built-in Omit type */
90
+ export type Omit<type, keys extends keyof type> = Pick<type, Exclude<keyof type, keys>>;
91
+ /**
92
+ * @description Creates a type that is a partial of T, but with the required keys K.
93
+ *
94
+ * @example
95
+ * PartialBy<{ a: string, b: number }, 'a'>
96
+ * => { a?: string, b: number }
97
+ */
98
+ export type PartialBy<T, K extends keyof T> = Omit<T, K> & ExactPartial<Pick<T, K>>;
99
+ /**
100
+ * @description Combines members of an intersection into a readable type.
101
+ *
102
+ * @see {@link https://twitter.com/mattpocockuk/status/1622730173446557697?s=20&t=NdpAcmEFXY01xkqU3KO0Mg}
103
+ * @example
104
+ * Prettify<{ a: string } & { b: string } & { c: number, d: bigint }>
105
+ * => { a: string, b: string, c: number, d: bigint }
106
+ */
107
+ export type Prettify<T> = {
108
+ [K in keyof T]: T[K];
109
+ } & {};
110
+ /** @internal */
111
+ export type Evaluate<type> = {
112
+ [key in keyof type]: type[key];
113
+ } & {};
114
+ /**
115
+ * @description Creates a type that is T with the required keys K.
116
+ *
117
+ * @example
118
+ * RequiredBy<{ a?: string, b: number }, 'a'>
119
+ * => { a: string, b: number }
120
+ */
121
+ export type RequiredBy<T, K extends keyof T> = Omit<T, K> & ExactRequired<Pick<T, K>>;
122
+ /**
123
+ * @description Returns truthy if `array` contains `value`.
124
+ *
125
+ * @example
126
+ * Some<[1, 2, 3], 2>
127
+ * => true
128
+ */
129
+ export type Some<array extends readonly unknown[], value> = array extends readonly [
130
+ value,
131
+ ...unknown[]
132
+ ] ? true : array extends readonly [unknown, ...infer rest] ? Some<rest, value> : false;
133
+ export type UnionToTuple<union, last = LastInUnion<union>> = [union] extends [never] ? [] : [...UnionToTuple<Exclude<union, last>>, last];
134
+ type LastInUnion<U> = UnionToIntersection<U extends unknown ? (x: U) => 0 : never> extends (x: infer l) => 0 ? l : never;
135
+ type UnionToIntersection<union> = (union extends unknown ? (arg: union) => 0 : never) extends (arg: infer i) => 0 ? i : never;
136
+ export type IsUnion<union, union2 = union> = union extends union2 ? ([union2] extends [union] ? false : true) : never;
137
+ export type MaybePartial<type, enabled extends boolean | undefined> = enabled extends true ? Prettify<ExactPartial<type>> : type;
138
+ export type ExactPartial<type> = {
139
+ [key in keyof type]?: type[key] | undefined;
140
+ };
141
+ export type ExactRequired<type> = {
142
+ [P in keyof type]-?: Exclude<type[P], undefined>;
143
+ };
144
+ export type OneOf<union extends object, fallback extends object | undefined = undefined, keys extends KeyofUnion<union> = KeyofUnion<union>> = union extends infer item ? Prettify<item & {
145
+ [key in Exclude<keys, keyof item>]?: fallback extends object ? key extends keyof fallback ? fallback[key] : undefined : undefined;
146
+ }> : never;
147
+ type KeyofUnion<type> = type extends type ? keyof type : never;
148
+ /**
149
+ * Loose version of {@link Omit}
150
+ * @internal
151
+ */
152
+ export type LooseOmit<type, keys extends string> = Pick<type, Exclude<keyof type, keys>>;
153
+ export type UnionEvaluate<type> = type extends object ? Prettify<type> : type;
154
+ export type UnionLooseOmit<type, keys extends string> = type extends any ? LooseOmit<type, keys> : never;
155
+ /**
156
+ * @description Construct a type with the properties of union type T except for those in type K.
157
+ * @example
158
+ * type Result = UnionOmit<{ a: string, b: number } | { a: string, b: undefined, c: number }, 'a'>
159
+ * => { b: number } | { b: undefined, c: number }
160
+ */
161
+ export type UnionOmit<type, keys extends keyof type> = type extends any ? Omit<type, keys> : never;
162
+ /**
163
+ * @description Construct a type with the properties of union type T except for those in type K.
164
+ * @example
165
+ * type Result = UnionOmit<{ a: string, b: number } | { a: string, b: undefined, c: number }, 'a'>
166
+ * => { b: number } | { b: undefined, c: number }
167
+ */
168
+ export type UnionPick<type, keys extends keyof type> = type extends any ? Pick<type, keys> : never;
169
+ /**
170
+ * @description Creates a type that is a partial of T, but with the required keys K.
171
+ *
172
+ * @example
173
+ * PartialBy<{ a: string, b: number } | { a: string, b: undefined, c: number }, 'a'>
174
+ * => { a?: string, b: number } | { a?: string, b: undefined, c: number }
175
+ */
176
+ export type UnionPartialBy<T, K extends keyof T> = T extends any ? PartialBy<T, K> : never;
177
+ /**
178
+ * @description Creates a type that is T with the required keys K.
179
+ *
180
+ * @example
181
+ * RequiredBy<{ a?: string, b: number } | { a?: string, c?: number }, 'a'>
182
+ * => { a: string, b: number } | { a: string, c?: number }
183
+ */
184
+ export type UnionRequiredBy<T, K extends keyof T> = T extends any ? RequiredBy<T, K> : never;
185
+ export {};
186
+ //# sourceMappingURL=viem.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"viem.d.ts","sourceRoot":"","sources":["../src/viem.ts"],"names":[],"mappings":"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"}
package/dist/viem.js ADDED
@@ -0,0 +1,4 @@
1
+ import './GHCFU27L.js';
2
+ import './4RNWLMHM.js';
3
+ //# sourceMappingURL=viem.js.map
4
+ //# sourceMappingURL=viem.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","file":"viem.js"}
@@ -0,0 +1,7 @@
1
+ 'use strict';
2
+
3
+ require('./VLOINXK2.cjs');
4
+ require('./U7VZULNU.cjs');
5
+
6
+ //# sourceMappingURL=withRequired.cjs.map
7
+ //# sourceMappingURL=withRequired.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","file":"withRequired.cjs"}