structured-outputs 0.1.0-beta.2 → 0.1.0-beta.20

Sign up to get free protection for your applications and to get access to all the features.
Files changed (565) hide show
  1. package/README.md +77 -6
  2. package/esm/ResponseFormat.js +33 -5
  3. package/esm/ResponseFormat.js.map +1 -1
  4. package/esm/Tool.js +17 -0
  5. package/esm/Tool.js.map +1 -0
  6. package/esm/_dnt.polyfills.js +16 -0
  7. package/esm/_dnt.polyfills.js.map +1 -0
  8. package/esm/_dnt.shims.js +58 -0
  9. package/esm/_dnt.shims.js.map +1 -0
  10. package/esm/deps/jsr.io/@std/assert/1.0.8/almost_equals.js +47 -0
  11. package/esm/deps/jsr.io/@std/assert/1.0.8/almost_equals.js.map +1 -0
  12. package/esm/deps/jsr.io/@std/assert/1.0.8/array_includes.js +47 -0
  13. package/esm/deps/jsr.io/@std/assert/1.0.8/array_includes.js.map +1 -0
  14. package/esm/deps/jsr.io/@std/assert/1.0.8/assert.js +23 -0
  15. package/esm/deps/jsr.io/@std/assert/1.0.8/assert.js.map +1 -0
  16. package/esm/deps/jsr.io/@std/assert/1.0.8/assertion_error.js +31 -0
  17. package/esm/deps/jsr.io/@std/assert/1.0.8/assertion_error.js.map +1 -0
  18. package/esm/deps/jsr.io/@std/assert/1.0.8/equal.js +184 -0
  19. package/esm/deps/jsr.io/@std/assert/1.0.8/equal.js.map +1 -0
  20. package/esm/deps/jsr.io/@std/assert/1.0.8/equals.js +46 -0
  21. package/esm/deps/jsr.io/@std/assert/1.0.8/equals.js.map +1 -0
  22. package/esm/deps/jsr.io/@std/assert/1.0.8/exists.js +28 -0
  23. package/esm/deps/jsr.io/@std/assert/1.0.8/exists.js.map +1 -0
  24. package/esm/deps/jsr.io/@std/assert/1.0.8/fail.js +21 -0
  25. package/esm/deps/jsr.io/@std/assert/1.0.8/fail.js.map +1 -0
  26. package/esm/deps/jsr.io/@std/assert/1.0.8/false.js +23 -0
  27. package/esm/deps/jsr.io/@std/assert/1.0.8/false.js.map +1 -0
  28. package/esm/deps/jsr.io/@std/assert/1.0.8/greater.js +30 -0
  29. package/esm/deps/jsr.io/@std/assert/1.0.8/greater.js.map +1 -0
  30. package/esm/deps/jsr.io/@std/assert/1.0.8/greater_or_equal.js +30 -0
  31. package/esm/deps/jsr.io/@std/assert/1.0.8/greater_or_equal.js.map +1 -0
  32. package/esm/deps/jsr.io/@std/assert/1.0.8/instance_of.js +53 -0
  33. package/esm/deps/jsr.io/@std/assert/1.0.8/instance_of.js.map +1 -0
  34. package/esm/deps/jsr.io/@std/assert/1.0.8/is_error.js +54 -0
  35. package/esm/deps/jsr.io/@std/assert/1.0.8/is_error.js.map +1 -0
  36. package/esm/deps/jsr.io/@std/assert/1.0.8/less.js +29 -0
  37. package/esm/deps/jsr.io/@std/assert/1.0.8/less.js.map +1 -0
  38. package/esm/deps/jsr.io/@std/assert/1.0.8/less_or_equal.js +30 -0
  39. package/esm/deps/jsr.io/@std/assert/1.0.8/less_or_equal.js.map +1 -0
  40. package/esm/deps/jsr.io/@std/assert/1.0.8/match.js +27 -0
  41. package/esm/deps/jsr.io/@std/assert/1.0.8/match.js.map +1 -0
  42. package/esm/deps/jsr.io/@std/assert/1.0.8/mod.js +46 -0
  43. package/esm/deps/jsr.io/@std/assert/1.0.8/mod.js.map +1 -0
  44. package/esm/deps/jsr.io/@std/assert/1.0.8/not_equals.js +33 -0
  45. package/esm/deps/jsr.io/@std/assert/1.0.8/not_equals.js.map +1 -0
  46. package/esm/deps/jsr.io/@std/assert/1.0.8/not_instance_of.js +30 -0
  47. package/esm/deps/jsr.io/@std/assert/1.0.8/not_instance_of.js.map +1 -0
  48. package/esm/deps/jsr.io/@std/assert/1.0.8/not_match.js +27 -0
  49. package/esm/deps/jsr.io/@std/assert/1.0.8/not_match.js.map +1 -0
  50. package/esm/deps/jsr.io/@std/assert/1.0.8/not_strict_equals.js +33 -0
  51. package/esm/deps/jsr.io/@std/assert/1.0.8/not_strict_equals.js.map +1 -0
  52. package/esm/deps/jsr.io/@std/assert/1.0.8/object_match.js +160 -0
  53. package/esm/deps/jsr.io/@std/assert/1.0.8/object_match.js.map +1 -0
  54. package/esm/deps/jsr.io/@std/assert/1.0.8/rejects.js +54 -0
  55. package/esm/deps/jsr.io/@std/assert/1.0.8/rejects.js.map +1 -0
  56. package/esm/deps/jsr.io/@std/assert/1.0.8/strict_equals.js +58 -0
  57. package/esm/deps/jsr.io/@std/assert/1.0.8/strict_equals.js.map +1 -0
  58. package/esm/deps/jsr.io/@std/assert/1.0.8/string_includes.js +27 -0
  59. package/esm/deps/jsr.io/@std/assert/1.0.8/string_includes.js.map +1 -0
  60. package/esm/deps/jsr.io/@std/assert/1.0.8/throws.js +45 -0
  61. package/esm/deps/jsr.io/@std/assert/1.0.8/throws.js.map +1 -0
  62. package/esm/deps/jsr.io/@std/assert/1.0.8/unimplemented.js +21 -0
  63. package/esm/deps/jsr.io/@std/assert/1.0.8/unimplemented.js.map +1 -0
  64. package/esm/deps/jsr.io/@std/assert/1.0.8/unreachable.js +21 -0
  65. package/esm/deps/jsr.io/@std/assert/1.0.8/unreachable.js.map +1 -0
  66. package/esm/deps/jsr.io/@std/collections/1.0.9/_utils.js +19 -0
  67. package/esm/deps/jsr.io/@std/collections/1.0.9/_utils.js.map +1 -0
  68. package/esm/deps/jsr.io/@std/collections/1.0.9/aggregate_groups.js +51 -0
  69. package/esm/deps/jsr.io/@std/collections/1.0.9/aggregate_groups.js.map +1 -0
  70. package/esm/deps/jsr.io/@std/collections/1.0.9/associate_by.js +45 -0
  71. package/esm/deps/jsr.io/@std/collections/1.0.9/associate_by.js.map +1 -0
  72. package/esm/deps/jsr.io/@std/collections/1.0.9/associate_with.js +41 -0
  73. package/esm/deps/jsr.io/@std/collections/1.0.9/associate_with.js.map +1 -0
  74. package/esm/deps/jsr.io/@std/collections/1.0.9/chunk.js +51 -0
  75. package/esm/deps/jsr.io/@std/collections/1.0.9/chunk.js.map +1 -0
  76. package/esm/deps/jsr.io/@std/collections/1.0.9/deep_merge.js +96 -0
  77. package/esm/deps/jsr.io/@std/collections/1.0.9/deep_merge.js.map +1 -0
  78. package/esm/deps/jsr.io/@std/collections/1.0.9/distinct.js +28 -0
  79. package/esm/deps/jsr.io/@std/collections/1.0.9/distinct.js.map +1 -0
  80. package/esm/deps/jsr.io/@std/collections/1.0.9/distinct_by.js +39 -0
  81. package/esm/deps/jsr.io/@std/collections/1.0.9/distinct_by.js.map +1 -0
  82. package/esm/deps/jsr.io/@std/collections/1.0.9/drop_last_while.js +33 -0
  83. package/esm/deps/jsr.io/@std/collections/1.0.9/drop_last_while.js.map +1 -0
  84. package/esm/deps/jsr.io/@std/collections/1.0.9/drop_while.js +34 -0
  85. package/esm/deps/jsr.io/@std/collections/1.0.9/drop_while.js.map +1 -0
  86. package/esm/deps/jsr.io/@std/collections/1.0.9/filter_entries.js +43 -0
  87. package/esm/deps/jsr.io/@std/collections/1.0.9/filter_entries.js.map +1 -0
  88. package/esm/deps/jsr.io/@std/collections/1.0.9/filter_keys.js +46 -0
  89. package/esm/deps/jsr.io/@std/collections/1.0.9/filter_keys.js.map +1 -0
  90. package/esm/deps/jsr.io/@std/collections/1.0.9/filter_values.js +46 -0
  91. package/esm/deps/jsr.io/@std/collections/1.0.9/filter_values.js.map +1 -0
  92. package/esm/deps/jsr.io/@std/collections/1.0.9/find_single.js +45 -0
  93. package/esm/deps/jsr.io/@std/collections/1.0.9/find_single.js.map +1 -0
  94. package/esm/deps/jsr.io/@std/collections/1.0.9/first_not_nullish_of.js +42 -0
  95. package/esm/deps/jsr.io/@std/collections/1.0.9/first_not_nullish_of.js.map +1 -0
  96. package/esm/deps/jsr.io/@std/collections/1.0.9/includes_value.js +39 -0
  97. package/esm/deps/jsr.io/@std/collections/1.0.9/includes_value.js.map +1 -0
  98. package/esm/deps/jsr.io/@std/collections/1.0.9/intersect.js +36 -0
  99. package/esm/deps/jsr.io/@std/collections/1.0.9/intersect.js.map +1 -0
  100. package/esm/deps/jsr.io/@std/collections/1.0.9/invert.js +29 -0
  101. package/esm/deps/jsr.io/@std/collections/1.0.9/invert.js.map +1 -0
  102. package/esm/deps/jsr.io/@std/collections/1.0.9/invert_by.js +46 -0
  103. package/esm/deps/jsr.io/@std/collections/1.0.9/invert_by.js.map +1 -0
  104. package/esm/deps/jsr.io/@std/collections/1.0.9/join_to_string.js +59 -0
  105. package/esm/deps/jsr.io/@std/collections/1.0.9/join_to_string.js.map +1 -0
  106. package/esm/deps/jsr.io/@std/collections/1.0.9/map_entries.js +47 -0
  107. package/esm/deps/jsr.io/@std/collections/1.0.9/map_entries.js.map +1 -0
  108. package/esm/deps/jsr.io/@std/collections/1.0.9/map_keys.js +42 -0
  109. package/esm/deps/jsr.io/@std/collections/1.0.9/map_keys.js.map +1 -0
  110. package/esm/deps/jsr.io/@std/collections/1.0.9/map_not_nullish.js +43 -0
  111. package/esm/deps/jsr.io/@std/collections/1.0.9/map_not_nullish.js.map +1 -0
  112. package/esm/deps/jsr.io/@std/collections/1.0.9/map_values.js +13 -0
  113. package/esm/deps/jsr.io/@std/collections/1.0.9/map_values.js.map +1 -0
  114. package/esm/deps/jsr.io/@std/collections/1.0.9/max_by.js +15 -0
  115. package/esm/deps/jsr.io/@std/collections/1.0.9/max_by.js.map +1 -0
  116. package/esm/deps/jsr.io/@std/collections/1.0.9/max_of.js +17 -0
  117. package/esm/deps/jsr.io/@std/collections/1.0.9/max_of.js.map +1 -0
  118. package/esm/deps/jsr.io/@std/collections/1.0.9/max_with.js +41 -0
  119. package/esm/deps/jsr.io/@std/collections/1.0.9/max_with.js.map +1 -0
  120. package/esm/deps/jsr.io/@std/collections/1.0.9/min_by.js +15 -0
  121. package/esm/deps/jsr.io/@std/collections/1.0.9/min_by.js.map +1 -0
  122. package/esm/deps/jsr.io/@std/collections/1.0.9/min_of.js +17 -0
  123. package/esm/deps/jsr.io/@std/collections/1.0.9/min_of.js.map +1 -0
  124. package/esm/deps/jsr.io/@std/collections/1.0.9/min_with.js +37 -0
  125. package/esm/deps/jsr.io/@std/collections/1.0.9/min_with.js.map +1 -0
  126. package/esm/deps/jsr.io/@std/collections/1.0.9/mod.js +75 -0
  127. package/esm/deps/jsr.io/@std/collections/1.0.9/mod.js.map +1 -0
  128. package/esm/deps/jsr.io/@std/collections/1.0.9/omit.js +29 -0
  129. package/esm/deps/jsr.io/@std/collections/1.0.9/omit.js.map +1 -0
  130. package/esm/deps/jsr.io/@std/collections/1.0.9/partition.js +16 -0
  131. package/esm/deps/jsr.io/@std/collections/1.0.9/partition.js.map +1 -0
  132. package/esm/deps/jsr.io/@std/collections/1.0.9/partition_entries.js +54 -0
  133. package/esm/deps/jsr.io/@std/collections/1.0.9/partition_entries.js.map +1 -0
  134. package/esm/deps/jsr.io/@std/collections/1.0.9/permutations.js +58 -0
  135. package/esm/deps/jsr.io/@std/collections/1.0.9/permutations.js.map +1 -0
  136. package/esm/deps/jsr.io/@std/collections/1.0.9/pick.js +33 -0
  137. package/esm/deps/jsr.io/@std/collections/1.0.9/pick.js.map +1 -0
  138. package/esm/deps/jsr.io/@std/collections/1.0.9/reduce_groups.js +40 -0
  139. package/esm/deps/jsr.io/@std/collections/1.0.9/reduce_groups.js.map +1 -0
  140. package/esm/deps/jsr.io/@std/collections/1.0.9/running_reduce.js +32 -0
  141. package/esm/deps/jsr.io/@std/collections/1.0.9/running_reduce.js.map +1 -0
  142. package/esm/deps/jsr.io/@std/collections/1.0.9/sample.js +35 -0
  143. package/esm/deps/jsr.io/@std/collections/1.0.9/sample.js.map +1 -0
  144. package/esm/deps/jsr.io/@std/collections/1.0.9/sliding_windows.js +57 -0
  145. package/esm/deps/jsr.io/@std/collections/1.0.9/sliding_windows.js.map +1 -0
  146. package/esm/deps/jsr.io/@std/collections/1.0.9/sort_by.js +30 -0
  147. package/esm/deps/jsr.io/@std/collections/1.0.9/sort_by.js.map +1 -0
  148. package/esm/deps/jsr.io/@std/collections/1.0.9/sum_of.js +37 -0
  149. package/esm/deps/jsr.io/@std/collections/1.0.9/sum_of.js.map +1 -0
  150. package/esm/deps/jsr.io/@std/collections/1.0.9/take_last_while.js +34 -0
  151. package/esm/deps/jsr.io/@std/collections/1.0.9/take_last_while.js.map +1 -0
  152. package/esm/deps/jsr.io/@std/collections/1.0.9/take_while.js +39 -0
  153. package/esm/deps/jsr.io/@std/collections/1.0.9/take_while.js.map +1 -0
  154. package/esm/deps/jsr.io/@std/collections/1.0.9/union.js +34 -0
  155. package/esm/deps/jsr.io/@std/collections/1.0.9/union.js.map +1 -0
  156. package/esm/deps/jsr.io/@std/collections/1.0.9/unzip.js +46 -0
  157. package/esm/deps/jsr.io/@std/collections/1.0.9/unzip.js.map +1 -0
  158. package/esm/deps/jsr.io/@std/collections/1.0.9/without_all.js +28 -0
  159. package/esm/deps/jsr.io/@std/collections/1.0.9/without_all.js.map +1 -0
  160. package/esm/deps/jsr.io/@std/collections/1.0.9/zip.js +43 -0
  161. package/esm/deps/jsr.io/@std/collections/1.0.9/zip.js.map +1 -0
  162. package/esm/deps/jsr.io/@std/internal/1.0.5/build_message.js +111 -0
  163. package/esm/deps/jsr.io/@std/internal/1.0.5/build_message.js.map +1 -0
  164. package/esm/deps/jsr.io/@std/internal/1.0.5/diff.js +277 -0
  165. package/esm/deps/jsr.io/@std/internal/1.0.5/diff.js.map +1 -0
  166. package/esm/deps/jsr.io/@std/internal/1.0.5/diff_str.js +180 -0
  167. package/esm/deps/jsr.io/@std/internal/1.0.5/diff_str.js.map +1 -0
  168. package/esm/deps/jsr.io/@std/internal/1.0.5/format.js +38 -0
  169. package/esm/deps/jsr.io/@std/internal/1.0.5/format.js.map +1 -0
  170. package/esm/deps/jsr.io/@std/internal/1.0.5/styles.js +208 -0
  171. package/esm/deps/jsr.io/@std/internal/1.0.5/styles.js.map +1 -0
  172. package/esm/deps/jsr.io/@std/internal/1.0.5/types.js +3 -0
  173. package/esm/deps/jsr.io/@std/internal/1.0.5/types.js.map +1 -0
  174. package/esm/mod.js +3 -10
  175. package/esm/mod.js.map +1 -1
  176. package/esm/types/Ref.js +11 -0
  177. package/esm/types/Ref.js.map +1 -0
  178. package/esm/types/RootTy.js +19 -0
  179. package/esm/types/RootTy.js.map +1 -0
  180. package/esm/types/Ty.js +17 -0
  181. package/esm/types/Ty.js.map +1 -0
  182. package/esm/types/array.js +9 -0
  183. package/esm/types/array.js.map +1 -0
  184. package/esm/types/constant.js +8 -0
  185. package/esm/types/constant.js.map +1 -0
  186. package/esm/types/constantUnion.js +25 -0
  187. package/esm/types/constantUnion.js.map +1 -0
  188. package/esm/types/leaves.js +18 -0
  189. package/esm/types/leaves.js.map +1 -0
  190. package/esm/types/mod.js +11 -0
  191. package/esm/types/mod.js.map +1 -0
  192. package/esm/{object.js → types/object.js} +4 -4
  193. package/esm/types/object.js.map +1 -0
  194. package/esm/types/std/Option.js +9 -0
  195. package/esm/types/std/Option.js.map +1 -0
  196. package/esm/types/std/Wrapper.js +5 -0
  197. package/esm/types/std/Wrapper.js.map +1 -0
  198. package/esm/types/std/mod.js +3 -0
  199. package/esm/types/std/mod.js.map +1 -0
  200. package/esm/types/taggedUnion.js +20 -0
  201. package/esm/types/taggedUnion.js.map +1 -0
  202. package/esm/util/phantoms.js +4 -0
  203. package/esm/util/phantoms.js.map +1 -0
  204. package/esm/util/recombineTaggedTemplateArgs.js +4 -0
  205. package/esm/util/recombineTaggedTemplateArgs.js.map +1 -0
  206. package/package.json +10 -7
  207. package/src/ResponseFormat.ts +76 -25
  208. package/src/Tool.ts +38 -0
  209. package/src/_dnt.polyfills.ts +27 -0
  210. package/src/_dnt.shims.ts +60 -0
  211. package/src/deps/jsr.io/@std/assert/1.0.8/almost_equals.ts +55 -0
  212. package/src/deps/jsr.io/@std/assert/1.0.8/array_includes.ts +57 -0
  213. package/src/deps/jsr.io/@std/assert/1.0.8/assert.ts +23 -0
  214. package/src/deps/jsr.io/@std/assert/1.0.8/assertion_error.ts +31 -0
  215. package/src/deps/jsr.io/@std/assert/1.0.8/equal.ts +210 -0
  216. package/src/deps/jsr.io/@std/assert/1.0.8/equals.ts +52 -0
  217. package/src/deps/jsr.io/@std/assert/1.0.8/exists.ts +31 -0
  218. package/src/deps/jsr.io/@std/assert/1.0.8/fail.ts +21 -0
  219. package/src/deps/jsr.io/@std/assert/1.0.8/false.ts +26 -0
  220. package/src/deps/jsr.io/@std/assert/1.0.8/greater.ts +30 -0
  221. package/src/deps/jsr.io/@std/assert/1.0.8/greater_or_equal.ts +36 -0
  222. package/src/deps/jsr.io/@std/assert/1.0.8/instance_of.ts +64 -0
  223. package/src/deps/jsr.io/@std/assert/1.0.8/is_error.ts +65 -0
  224. package/src/deps/jsr.io/@std/assert/1.0.8/less.ts +29 -0
  225. package/src/deps/jsr.io/@std/assert/1.0.8/less_or_equal.ts +36 -0
  226. package/src/deps/jsr.io/@std/assert/1.0.8/match.ts +30 -0
  227. package/src/deps/jsr.io/@std/assert/1.0.8/mod.ts +47 -0
  228. package/src/deps/jsr.io/@std/assert/1.0.8/not_equals.ts +36 -0
  229. package/src/deps/jsr.io/@std/assert/1.0.8/not_instance_of.ts +33 -0
  230. package/src/deps/jsr.io/@std/assert/1.0.8/not_match.ts +30 -0
  231. package/src/deps/jsr.io/@std/assert/1.0.8/not_strict_equals.ts +42 -0
  232. package/src/deps/jsr.io/@std/assert/1.0.8/object_match.ts +202 -0
  233. package/src/deps/jsr.io/@std/assert/1.0.8/rejects.ts +123 -0
  234. package/src/deps/jsr.io/@std/assert/1.0.8/strict_equals.ts +67 -0
  235. package/src/deps/jsr.io/@std/assert/1.0.8/string_includes.ts +30 -0
  236. package/src/deps/jsr.io/@std/assert/1.0.8/throws.ts +111 -0
  237. package/src/deps/jsr.io/@std/assert/1.0.8/unimplemented.ts +21 -0
  238. package/src/deps/jsr.io/@std/assert/1.0.8/unreachable.ts +21 -0
  239. package/src/deps/jsr.io/@std/collections/1.0.9/_utils.ts +26 -0
  240. package/src/deps/jsr.io/@std/collections/1.0.9/aggregate_groups.ts +62 -0
  241. package/src/deps/jsr.io/@std/collections/1.0.9/associate_by.ts +50 -0
  242. package/src/deps/jsr.io/@std/collections/1.0.9/associate_with.ts +46 -0
  243. package/src/deps/jsr.io/@std/collections/1.0.9/chunk.ts +56 -0
  244. package/src/deps/jsr.io/@std/collections/1.0.9/deep_merge.ts +578 -0
  245. package/src/deps/jsr.io/@std/collections/1.0.9/distinct.ts +29 -0
  246. package/src/deps/jsr.io/@std/collections/1.0.9/distinct_by.ts +42 -0
  247. package/src/deps/jsr.io/@std/collections/1.0.9/drop_last_while.ts +36 -0
  248. package/src/deps/jsr.io/@std/collections/1.0.9/drop_while.ts +39 -0
  249. package/src/deps/jsr.io/@std/collections/1.0.9/filter_entries.ts +48 -0
  250. package/src/deps/jsr.io/@std/collections/1.0.9/filter_keys.ts +51 -0
  251. package/src/deps/jsr.io/@std/collections/1.0.9/filter_values.ts +51 -0
  252. package/src/deps/jsr.io/@std/collections/1.0.9/find_single.ts +48 -0
  253. package/src/deps/jsr.io/@std/collections/1.0.9/first_not_nullish_of.ts +47 -0
  254. package/src/deps/jsr.io/@std/collections/1.0.9/includes_value.ts +45 -0
  255. package/src/deps/jsr.io/@std/collections/1.0.9/intersect.ts +35 -0
  256. package/src/deps/jsr.io/@std/collections/1.0.9/invert.ts +38 -0
  257. package/src/deps/jsr.io/@std/collections/1.0.9/invert_by.ts +56 -0
  258. package/src/deps/jsr.io/@std/collections/1.0.9/join_to_string.ts +109 -0
  259. package/src/deps/jsr.io/@std/collections/1.0.9/map_entries.ts +53 -0
  260. package/src/deps/jsr.io/@std/collections/1.0.9/map_keys.ts +47 -0
  261. package/src/deps/jsr.io/@std/collections/1.0.9/map_not_nullish.ts +49 -0
  262. package/src/deps/jsr.io/@std/collections/1.0.9/map_values.ts +96 -0
  263. package/src/deps/jsr.io/@std/collections/1.0.9/max_by.ts +153 -0
  264. package/src/deps/jsr.io/@std/collections/1.0.9/max_of.ts +90 -0
  265. package/src/deps/jsr.io/@std/collections/1.0.9/max_with.ts +46 -0
  266. package/src/deps/jsr.io/@std/collections/1.0.9/min_by.ts +151 -0
  267. package/src/deps/jsr.io/@std/collections/1.0.9/min_of.ts +90 -0
  268. package/src/deps/jsr.io/@std/collections/1.0.9/min_with.ts +42 -0
  269. package/src/deps/jsr.io/@std/collections/1.0.9/mod.ts +76 -0
  270. package/src/deps/jsr.io/@std/collections/1.0.9/omit.ts +34 -0
  271. package/src/deps/jsr.io/@std/collections/1.0.9/partition.ts +85 -0
  272. package/src/deps/jsr.io/@std/collections/1.0.9/partition_entries.ts +58 -0
  273. package/src/deps/jsr.io/@std/collections/1.0.9/permutations.ts +66 -0
  274. package/src/deps/jsr.io/@std/collections/1.0.9/pick.ts +34 -0
  275. package/src/deps/jsr.io/@std/collections/1.0.9/reduce_groups.ts +45 -0
  276. package/src/deps/jsr.io/@std/collections/1.0.9/running_reduce.ts +38 -0
  277. package/src/deps/jsr.io/@std/collections/1.0.9/sample.ts +36 -0
  278. package/src/deps/jsr.io/@std/collections/1.0.9/sliding_windows.ts +86 -0
  279. package/src/deps/jsr.io/@std/collections/1.0.9/sort_by.ts +219 -0
  280. package/src/deps/jsr.io/@std/collections/1.0.9/sum_of.ts +42 -0
  281. package/src/deps/jsr.io/@std/collections/1.0.9/take_last_while.ts +37 -0
  282. package/src/deps/jsr.io/@std/collections/1.0.9/take_while.ts +44 -0
  283. package/src/deps/jsr.io/@std/collections/1.0.9/union.ts +36 -0
  284. package/src/deps/jsr.io/@std/collections/1.0.9/unzip.ts +50 -0
  285. package/src/deps/jsr.io/@std/collections/1.0.9/without_all.ts +28 -0
  286. package/src/deps/jsr.io/@std/collections/1.0.9/zip.ts +49 -0
  287. package/src/deps/jsr.io/@std/internal/1.0.5/build_message.ts +134 -0
  288. package/src/deps/jsr.io/@std/internal/1.0.5/diff.ts +317 -0
  289. package/src/deps/jsr.io/@std/internal/1.0.5/diff_str.ts +204 -0
  290. package/src/deps/jsr.io/@std/internal/1.0.5/format.ts +39 -0
  291. package/src/deps/jsr.io/@std/internal/1.0.5/styles.ts +233 -0
  292. package/src/deps/jsr.io/@std/internal/1.0.5/types.ts +18 -0
  293. package/src/mod.ts +3 -18
  294. package/src/types/Ref.ts +16 -0
  295. package/src/types/RootTy.ts +40 -0
  296. package/src/types/Ty.ts +57 -0
  297. package/src/types/array.ts +9 -0
  298. package/src/types/constant.ts +8 -0
  299. package/src/types/constantUnion.ts +27 -0
  300. package/src/types/leaves.ts +21 -0
  301. package/src/types/mod.ts +10 -0
  302. package/src/types/object.ts +15 -0
  303. package/src/types/std/Option.ts +15 -0
  304. package/src/types/std/Wrapper.ts +8 -0
  305. package/src/types/std/mod.ts +2 -0
  306. package/src/types/taggedUnion.ts +28 -0
  307. package/src/util/phantoms.ts +3 -0
  308. package/src/util/recombineTaggedTemplateArgs.ts +6 -0
  309. package/types/ResponseFormat.d.ts +26 -0
  310. package/types/ResponseFormat.d.ts.map +1 -0
  311. package/types/Tool.d.ts +13 -0
  312. package/types/Tool.d.ts.map +1 -0
  313. package/types/_dnt.polyfills.d.ts +12 -0
  314. package/types/_dnt.polyfills.d.ts.map +1 -0
  315. package/types/_dnt.shims.d.ts +2 -0
  316. package/types/_dnt.shims.d.ts.map +1 -0
  317. package/types/deps/jsr.io/@std/assert/1.0.8/almost_equals.d.ts +29 -0
  318. package/types/deps/jsr.io/@std/assert/1.0.8/almost_equals.d.ts.map +1 -0
  319. package/types/deps/jsr.io/@std/assert/1.0.8/array_includes.d.ts +24 -0
  320. package/types/deps/jsr.io/@std/assert/1.0.8/array_includes.d.ts.map +1 -0
  321. package/types/deps/jsr.io/@std/assert/1.0.8/assert.d.ts +16 -0
  322. package/types/deps/jsr.io/@std/assert/1.0.8/assert.d.ts.map +1 -0
  323. package/types/deps/jsr.io/@std/assert/1.0.8/assertion_error.d.ts +26 -0
  324. package/types/deps/jsr.io/@std/assert/1.0.8/assertion_error.d.ts.map +1 -0
  325. package/types/deps/jsr.io/@std/assert/1.0.8/equal.d.ts +17 -0
  326. package/types/deps/jsr.io/@std/assert/1.0.8/equal.d.ts.map +1 -0
  327. package/types/deps/jsr.io/@std/assert/1.0.8/equals.d.ts +22 -0
  328. package/types/deps/jsr.io/@std/assert/1.0.8/equals.d.ts.map +1 -0
  329. package/types/deps/jsr.io/@std/assert/1.0.8/exists.d.ts +18 -0
  330. package/types/deps/jsr.io/@std/assert/1.0.8/exists.d.ts.map +1 -0
  331. package/types/deps/jsr.io/@std/assert/1.0.8/fail.d.ts +15 -0
  332. package/types/deps/jsr.io/@std/assert/1.0.8/fail.d.ts.map +1 -0
  333. package/types/deps/jsr.io/@std/assert/1.0.8/false.d.ts +18 -0
  334. package/types/deps/jsr.io/@std/assert/1.0.8/false.d.ts.map +1 -0
  335. package/types/deps/jsr.io/@std/assert/1.0.8/greater.d.ts +20 -0
  336. package/types/deps/jsr.io/@std/assert/1.0.8/greater.d.ts.map +1 -0
  337. package/types/deps/jsr.io/@std/assert/1.0.8/greater_or_equal.d.ts +20 -0
  338. package/types/deps/jsr.io/@std/assert/1.0.8/greater_or_equal.d.ts.map +1 -0
  339. package/types/deps/jsr.io/@std/assert/1.0.8/instance_of.d.ts +23 -0
  340. package/types/deps/jsr.io/@std/assert/1.0.8/instance_of.d.ts.map +1 -0
  341. package/types/deps/jsr.io/@std/assert/1.0.8/is_error.d.ts +25 -0
  342. package/types/deps/jsr.io/@std/assert/1.0.8/is_error.d.ts.map +1 -0
  343. package/types/deps/jsr.io/@std/assert/1.0.8/less.d.ts +19 -0
  344. package/types/deps/jsr.io/@std/assert/1.0.8/less.d.ts.map +1 -0
  345. package/types/deps/jsr.io/@std/assert/1.0.8/less_or_equal.d.ts +20 -0
  346. package/types/deps/jsr.io/@std/assert/1.0.8/less_or_equal.d.ts.map +1 -0
  347. package/types/deps/jsr.io/@std/assert/1.0.8/match.d.ts +18 -0
  348. package/types/deps/jsr.io/@std/assert/1.0.8/match.d.ts.map +1 -0
  349. package/types/deps/jsr.io/@std/assert/1.0.8/mod.d.ts +44 -0
  350. package/types/deps/jsr.io/@std/assert/1.0.8/mod.d.ts.map +1 -0
  351. package/types/deps/jsr.io/@std/assert/1.0.8/not_equals.d.ts +21 -0
  352. package/types/deps/jsr.io/@std/assert/1.0.8/not_equals.d.ts.map +1 -0
  353. package/types/deps/jsr.io/@std/assert/1.0.8/not_instance_of.d.ts +20 -0
  354. package/types/deps/jsr.io/@std/assert/1.0.8/not_instance_of.d.ts.map +1 -0
  355. package/types/deps/jsr.io/@std/assert/1.0.8/not_match.d.ts +18 -0
  356. package/types/deps/jsr.io/@std/assert/1.0.8/not_match.d.ts.map +1 -0
  357. package/types/deps/jsr.io/@std/assert/1.0.8/not_strict_equals.d.ts +23 -0
  358. package/types/deps/jsr.io/@std/assert/1.0.8/not_strict_equals.d.ts.map +1 -0
  359. package/types/deps/jsr.io/@std/assert/1.0.8/object_match.d.ts +28 -0
  360. package/types/deps/jsr.io/@std/assert/1.0.8/object_match.d.ts.map +1 -0
  361. package/types/deps/jsr.io/@std/assert/1.0.8/rejects.d.ts +42 -0
  362. package/types/deps/jsr.io/@std/assert/1.0.8/rejects.d.ts.map +1 -0
  363. package/types/deps/jsr.io/@std/assert/1.0.8/strict_equals.d.ts +24 -0
  364. package/types/deps/jsr.io/@std/assert/1.0.8/strict_equals.d.ts.map +1 -0
  365. package/types/deps/jsr.io/@std/assert/1.0.8/string_includes.d.ts +18 -0
  366. package/types/deps/jsr.io/@std/assert/1.0.8/string_includes.d.ts.map +1 -0
  367. package/types/deps/jsr.io/@std/assert/1.0.8/throws.d.ts +45 -0
  368. package/types/deps/jsr.io/@std/assert/1.0.8/throws.d.ts.map +1 -0
  369. package/types/deps/jsr.io/@std/assert/1.0.8/unimplemented.d.ts +15 -0
  370. package/types/deps/jsr.io/@std/assert/1.0.8/unimplemented.d.ts.map +1 -0
  371. package/types/deps/jsr.io/@std/assert/1.0.8/unreachable.d.ts +15 -0
  372. package/types/deps/jsr.io/@std/assert/1.0.8/unreachable.d.ts.map +1 -0
  373. package/types/deps/jsr.io/@std/collections/1.0.9/_utils.d.ts +6 -0
  374. package/types/deps/jsr.io/@std/collections/1.0.9/_utils.d.ts.map +1 -0
  375. package/types/deps/jsr.io/@std/collections/1.0.9/aggregate_groups.d.ts +41 -0
  376. package/types/deps/jsr.io/@std/collections/1.0.9/aggregate_groups.d.ts.map +1 -0
  377. package/types/deps/jsr.io/@std/collections/1.0.9/associate_by.d.ts +37 -0
  378. package/types/deps/jsr.io/@std/collections/1.0.9/associate_by.d.ts.map +1 -0
  379. package/types/deps/jsr.io/@std/collections/1.0.9/associate_with.d.ts +33 -0
  380. package/types/deps/jsr.io/@std/collections/1.0.9/associate_with.d.ts.map +1 -0
  381. package/types/deps/jsr.io/@std/collections/1.0.9/chunk.d.ts +38 -0
  382. package/types/deps/jsr.io/@std/collections/1.0.9/chunk.d.ts.map +1 -0
  383. package/types/deps/jsr.io/@std/collections/1.0.9/deep_merge.d.ts +322 -0
  384. package/types/deps/jsr.io/@std/collections/1.0.9/deep_merge.d.ts.map +1 -0
  385. package/types/deps/jsr.io/@std/collections/1.0.9/distinct.d.ts +23 -0
  386. package/types/deps/jsr.io/@std/collections/1.0.9/distinct.d.ts.map +1 -0
  387. package/types/deps/jsr.io/@std/collections/1.0.9/distinct_by.d.ts +26 -0
  388. package/types/deps/jsr.io/@std/collections/1.0.9/distinct_by.d.ts.map +1 -0
  389. package/types/deps/jsr.io/@std/collections/1.0.9/drop_last_while.d.ts +26 -0
  390. package/types/deps/jsr.io/@std/collections/1.0.9/drop_last_while.d.ts.map +1 -0
  391. package/types/deps/jsr.io/@std/collections/1.0.9/drop_while.d.ts +25 -0
  392. package/types/deps/jsr.io/@std/collections/1.0.9/drop_while.d.ts.map +1 -0
  393. package/types/deps/jsr.io/@std/collections/1.0.9/filter_entries.d.ts +32 -0
  394. package/types/deps/jsr.io/@std/collections/1.0.9/filter_entries.d.ts.map +1 -0
  395. package/types/deps/jsr.io/@std/collections/1.0.9/filter_keys.d.ts +36 -0
  396. package/types/deps/jsr.io/@std/collections/1.0.9/filter_keys.d.ts.map +1 -0
  397. package/types/deps/jsr.io/@std/collections/1.0.9/filter_values.d.ts +35 -0
  398. package/types/deps/jsr.io/@std/collections/1.0.9/filter_values.d.ts.map +1 -0
  399. package/types/deps/jsr.io/@std/collections/1.0.9/find_single.d.ts +31 -0
  400. package/types/deps/jsr.io/@std/collections/1.0.9/find_single.d.ts.map +1 -0
  401. package/types/deps/jsr.io/@std/collections/1.0.9/first_not_nullish_of.d.ts +32 -0
  402. package/types/deps/jsr.io/@std/collections/1.0.9/first_not_nullish_of.d.ts.map +1 -0
  403. package/types/deps/jsr.io/@std/collections/1.0.9/includes_value.d.ts +29 -0
  404. package/types/deps/jsr.io/@std/collections/1.0.9/includes_value.d.ts.map +1 -0
  405. package/types/deps/jsr.io/@std/collections/1.0.9/intersect.d.ts +25 -0
  406. package/types/deps/jsr.io/@std/collections/1.0.9/intersect.d.ts.map +1 -0
  407. package/types/deps/jsr.io/@std/collections/1.0.9/invert.d.ts +29 -0
  408. package/types/deps/jsr.io/@std/collections/1.0.9/invert.d.ts.map +1 -0
  409. package/types/deps/jsr.io/@std/collections/1.0.9/invert_by.d.ts +34 -0
  410. package/types/deps/jsr.io/@std/collections/1.0.9/invert_by.d.ts.map +1 -0
  411. package/types/deps/jsr.io/@std/collections/1.0.9/join_to_string.d.ts +75 -0
  412. package/types/deps/jsr.io/@std/collections/1.0.9/join_to_string.d.ts.map +1 -0
  413. package/types/deps/jsr.io/@std/collections/1.0.9/map_entries.d.ts +37 -0
  414. package/types/deps/jsr.io/@std/collections/1.0.9/map_entries.d.ts.map +1 -0
  415. package/types/deps/jsr.io/@std/collections/1.0.9/map_keys.d.ts +33 -0
  416. package/types/deps/jsr.io/@std/collections/1.0.9/map_keys.d.ts.map +1 -0
  417. package/types/deps/jsr.io/@std/collections/1.0.9/map_not_nullish.d.ts +32 -0
  418. package/types/deps/jsr.io/@std/collections/1.0.9/map_not_nullish.d.ts.map +1 -0
  419. package/types/deps/jsr.io/@std/collections/1.0.9/map_values.d.ts +71 -0
  420. package/types/deps/jsr.io/@std/collections/1.0.9/map_values.d.ts.map +1 -0
  421. package/types/deps/jsr.io/@std/collections/1.0.9/max_by.d.ts +117 -0
  422. package/types/deps/jsr.io/@std/collections/1.0.9/max_by.d.ts.map +1 -0
  423. package/types/deps/jsr.io/@std/collections/1.0.9/max_of.d.ts +61 -0
  424. package/types/deps/jsr.io/@std/collections/1.0.9/max_of.d.ts.map +1 -0
  425. package/types/deps/jsr.io/@std/collections/1.0.9/max_with.d.ts +29 -0
  426. package/types/deps/jsr.io/@std/collections/1.0.9/max_with.d.ts.map +1 -0
  427. package/types/deps/jsr.io/@std/collections/1.0.9/min_by.d.ts +115 -0
  428. package/types/deps/jsr.io/@std/collections/1.0.9/min_by.d.ts.map +1 -0
  429. package/types/deps/jsr.io/@std/collections/1.0.9/min_of.d.ts +61 -0
  430. package/types/deps/jsr.io/@std/collections/1.0.9/min_of.d.ts.map +1 -0
  431. package/types/deps/jsr.io/@std/collections/1.0.9/min_with.d.ts +25 -0
  432. package/types/deps/jsr.io/@std/collections/1.0.9/min_with.d.ts.map +1 -0
  433. package/types/deps/jsr.io/@std/collections/1.0.9/mod.d.ts +73 -0
  434. package/types/deps/jsr.io/@std/collections/1.0.9/mod.d.ts.map +1 -0
  435. package/types/deps/jsr.io/@std/collections/1.0.9/omit.d.ts +24 -0
  436. package/types/deps/jsr.io/@std/collections/1.0.9/omit.d.ts.map +1 -0
  437. package/types/deps/jsr.io/@std/collections/1.0.9/partition.d.ts +60 -0
  438. package/types/deps/jsr.io/@std/collections/1.0.9/partition.d.ts.map +1 -0
  439. package/types/deps/jsr.io/@std/collections/1.0.9/partition_entries.d.ts +39 -0
  440. package/types/deps/jsr.io/@std/collections/1.0.9/partition_entries.d.ts.map +1 -0
  441. package/types/deps/jsr.io/@std/collections/1.0.9/permutations.d.ts +27 -0
  442. package/types/deps/jsr.io/@std/collections/1.0.9/permutations.d.ts.map +1 -0
  443. package/types/deps/jsr.io/@std/collections/1.0.9/pick.d.ts +25 -0
  444. package/types/deps/jsr.io/@std/collections/1.0.9/pick.d.ts.map +1 -0
  445. package/types/deps/jsr.io/@std/collections/1.0.9/reduce_groups.d.ts +35 -0
  446. package/types/deps/jsr.io/@std/collections/1.0.9/reduce_groups.d.ts.map +1 -0
  447. package/types/deps/jsr.io/@std/collections/1.0.9/running_reduce.d.ts +27 -0
  448. package/types/deps/jsr.io/@std/collections/1.0.9/running_reduce.d.ts.map +1 -0
  449. package/types/deps/jsr.io/@std/collections/1.0.9/sample.d.ts +24 -0
  450. package/types/deps/jsr.io/@std/collections/1.0.9/sample.d.ts.map +1 -0
  451. package/types/deps/jsr.io/@std/collections/1.0.9/sliding_windows.d.ts +66 -0
  452. package/types/deps/jsr.io/@std/collections/1.0.9/sliding_windows.d.ts.map +1 -0
  453. package/types/deps/jsr.io/@std/collections/1.0.9/sort_by.d.ts +161 -0
  454. package/types/deps/jsr.io/@std/collections/1.0.9/sort_by.d.ts.map +1 -0
  455. package/types/deps/jsr.io/@std/collections/1.0.9/sum_of.d.ts +29 -0
  456. package/types/deps/jsr.io/@std/collections/1.0.9/sum_of.d.ts.map +1 -0
  457. package/types/deps/jsr.io/@std/collections/1.0.9/take_last_while.d.ts +27 -0
  458. package/types/deps/jsr.io/@std/collections/1.0.9/take_last_while.d.ts.map +1 -0
  459. package/types/deps/jsr.io/@std/collections/1.0.9/take_while.d.ts +30 -0
  460. package/types/deps/jsr.io/@std/collections/1.0.9/take_while.d.ts.map +1 -0
  461. package/types/deps/jsr.io/@std/collections/1.0.9/union.d.ts +24 -0
  462. package/types/deps/jsr.io/@std/collections/1.0.9/union.d.ts.map +1 -0
  463. package/types/deps/jsr.io/@std/collections/1.0.9/unzip.d.ts +32 -0
  464. package/types/deps/jsr.io/@std/collections/1.0.9/unzip.d.ts.map +1 -0
  465. package/types/deps/jsr.io/@std/collections/1.0.9/without_all.d.ts +23 -0
  466. package/types/deps/jsr.io/@std/collections/1.0.9/without_all.d.ts.map +1 -0
  467. package/types/deps/jsr.io/@std/collections/1.0.9/zip.d.ts +34 -0
  468. package/types/deps/jsr.io/@std/collections/1.0.9/zip.d.ts.map +1 -0
  469. package/types/deps/jsr.io/@std/internal/1.0.5/build_message.d.ts +82 -0
  470. package/types/deps/jsr.io/@std/internal/1.0.5/build_message.d.ts.map +1 -0
  471. package/types/deps/jsr.io/@std/internal/1.0.5/diff.d.ts +140 -0
  472. package/types/deps/jsr.io/@std/internal/1.0.5/diff.d.ts.map +1 -0
  473. package/types/deps/jsr.io/@std/internal/1.0.5/diff_str.d.ts +99 -0
  474. package/types/deps/jsr.io/@std/internal/1.0.5/diff_str.d.ts.map +1 -0
  475. package/types/deps/jsr.io/@std/internal/1.0.5/format.d.ts +2 -0
  476. package/types/deps/jsr.io/@std/internal/1.0.5/format.d.ts.map +1 -0
  477. package/types/deps/jsr.io/@std/internal/1.0.5/styles.d.ts +159 -0
  478. package/types/deps/jsr.io/@std/internal/1.0.5/styles.d.ts.map +1 -0
  479. package/types/deps/jsr.io/@std/internal/1.0.5/types.d.ts +16 -0
  480. package/types/deps/jsr.io/@std/internal/1.0.5/types.d.ts.map +1 -0
  481. package/types/mod.d.ts +5 -0
  482. package/types/mod.d.ts.map +1 -0
  483. package/types/types/Ref.d.ts +4 -0
  484. package/types/types/Ref.d.ts.map +1 -0
  485. package/types/types/RootTy.d.ts +8 -0
  486. package/types/types/RootTy.d.ts.map +1 -0
  487. package/types/types/Ty.d.ts +27 -0
  488. package/types/types/Ty.d.ts.map +1 -0
  489. package/types/types/array.d.ts +3 -0
  490. package/types/types/array.d.ts.map +1 -0
  491. package/types/types/constant.d.ts +3 -0
  492. package/types/types/constant.d.ts.map +1 -0
  493. package/types/types/constantUnion.d.ts +3 -0
  494. package/types/types/constantUnion.d.ts.map +1 -0
  495. package/types/types/leaves.d.ts +6 -0
  496. package/types/types/leaves.d.ts.map +1 -0
  497. package/types/types/mod.d.ts +11 -0
  498. package/types/types/mod.d.ts.map +1 -0
  499. package/types/types/object.d.ts +6 -0
  500. package/types/types/object.d.ts.map +1 -0
  501. package/types/types/std/Option.d.ts +7 -0
  502. package/types/types/std/Option.d.ts.map +1 -0
  503. package/types/types/std/Wrapper.d.ts +7 -0
  504. package/types/types/std/Wrapper.d.ts.map +1 -0
  505. package/types/types/std/mod.d.ts +3 -0
  506. package/types/types/std/mod.d.ts.map +1 -0
  507. package/types/types/taggedUnion.d.ts +8 -0
  508. package/types/types/taggedUnion.d.ts.map +1 -0
  509. package/types/util/phantoms.d.ts +2 -0
  510. package/types/util/phantoms.d.ts.map +1 -0
  511. package/types/util/recombineTaggedTemplateArgs.d.ts +2 -0
  512. package/types/util/recombineTaggedTemplateArgs.d.ts.map +1 -0
  513. package/esm/F.d.ts +0 -13
  514. package/esm/F.d.ts.map +0 -1
  515. package/esm/F.js +0 -10
  516. package/esm/F.js.map +0 -1
  517. package/esm/ResponseFormat.d.ts +0 -14
  518. package/esm/ResponseFormat.d.ts.map +0 -1
  519. package/esm/_base.d.ts +0 -13
  520. package/esm/_base.d.ts.map +0 -1
  521. package/esm/_base.js +0 -40
  522. package/esm/_base.js.map +0 -1
  523. package/esm/array.d.ts +0 -4
  524. package/esm/array.d.ts.map +0 -1
  525. package/esm/array.js +0 -9
  526. package/esm/array.js.map +0 -1
  527. package/esm/common.d.ts +0 -6
  528. package/esm/common.d.ts.map +0 -1
  529. package/esm/common.js +0 -2
  530. package/esm/common.js.map +0 -1
  531. package/esm/literal.d.ts +0 -4
  532. package/esm/literal.d.ts.map +0 -1
  533. package/esm/literal.js +0 -8
  534. package/esm/literal.js.map +0 -1
  535. package/esm/mod.d.ts +0 -16
  536. package/esm/mod.d.ts.map +0 -1
  537. package/esm/number.d.ts +0 -4
  538. package/esm/number.d.ts.map +0 -1
  539. package/esm/number.js +0 -8
  540. package/esm/number.js.map +0 -1
  541. package/esm/object.d.ts +0 -7
  542. package/esm/object.d.ts.map +0 -1
  543. package/esm/object.js.map +0 -1
  544. package/esm/schema.d.ts +0 -4
  545. package/esm/schema.d.ts.map +0 -1
  546. package/esm/schema.js +0 -9
  547. package/esm/schema.js.map +0 -1
  548. package/esm/string.d.ts +0 -4
  549. package/esm/string.d.ts.map +0 -1
  550. package/esm/string.js +0 -8
  551. package/esm/string.js.map +0 -1
  552. package/esm/union.d.ts +0 -6
  553. package/esm/union.d.ts.map +0 -1
  554. package/esm/union.js +0 -8
  555. package/esm/union.js.map +0 -1
  556. package/src/F.ts +0 -27
  557. package/src/_base.ts +0 -25
  558. package/src/array.ts +0 -11
  559. package/src/common.ts +0 -6
  560. package/src/literal.ts +0 -10
  561. package/src/number.ts +0 -10
  562. package/src/object.ts +0 -17
  563. package/src/schema.ts +0 -10
  564. package/src/string.ts +0 -10
  565. package/src/union.ts +0 -12
package/src/Tool.ts ADDED
@@ -0,0 +1,38 @@
1
+ import type { RootTy, Schema } from "./types/mod.js"
2
+ import { recombineTaggedTemplateArgs } from "./util/recombineTaggedTemplateArgs.js"
3
+
4
+ export function Tool<T>(name: string, ty: RootTy<T, never>): Tool<T> {
5
+ return Tool_(name, ty)
6
+ }
7
+
8
+ function Tool_<T>(name: string, ty: RootTy<T, never>, description?: string): Tool<T> {
9
+ return Object.assign(
10
+ (template: TemplateStringsArray, ...quasis: Array<string>) =>
11
+ Tool_(
12
+ name,
13
+ ty,
14
+ description ? `${description} ${recombineTaggedTemplateArgs(template, quasis)}` : undefined,
15
+ ),
16
+ {
17
+ type: "function" as const,
18
+ name,
19
+ description,
20
+ parameters: ty.schema(),
21
+ toJson() {
22
+ const { type, name, description, parameters } = this
23
+ return { type, name, description, parameters }
24
+ },
25
+ },
26
+ )
27
+ }
28
+
29
+ export interface Tool<T = any> {
30
+ (template: TemplateStringsArray, ...quasis: Array<string>): Tool<T>
31
+ type: "function"
32
+ /** The name with which OpenAI recognizes the tool. */
33
+ name: string
34
+ /** A description to inform the LLM of when/how to use the tool. */
35
+ description?: string
36
+ /** The tool implementation's argument type in JSON Schema. */
37
+ parameters?: Schema
38
+ }
@@ -0,0 +1,27 @@
1
+ // https://github.com/tc39/proposal-accessible-object-hasownproperty/blob/main/polyfill.js
2
+ if (!Object.hasOwn) {
3
+ Object.defineProperty(Object, "hasOwn", {
4
+ value: function (object: any, property: any) {
5
+ if (object == null) {
6
+ throw new TypeError("Cannot convert undefined or null to object");
7
+ }
8
+ return Object.prototype.hasOwnProperty.call(Object(object), property);
9
+ },
10
+ configurable: true,
11
+ enumerable: false,
12
+ writable: true,
13
+ });
14
+ }
15
+
16
+ declare global {
17
+ interface Object {
18
+ /**
19
+ * Determines whether an object has a property with the specified name.
20
+ * @param o An object.
21
+ * @param v A property name.
22
+ */
23
+ hasOwn(o: object, v: PropertyKey): boolean;
24
+ }
25
+ }
26
+
27
+ export {};
@@ -0,0 +1,60 @@
1
+ const dntGlobals = {
2
+ };
3
+ export const dntGlobalThis = createMergeProxy(globalThis, dntGlobals);
4
+
5
+ function createMergeProxy<T extends object, U extends object>(
6
+ baseObj: T,
7
+ extObj: U,
8
+ ): Omit<T, keyof U> & U {
9
+ return new Proxy(baseObj, {
10
+ get(_target, prop, _receiver) {
11
+ if (prop in extObj) {
12
+ return (extObj as any)[prop];
13
+ } else {
14
+ return (baseObj as any)[prop];
15
+ }
16
+ },
17
+ set(_target, prop, value) {
18
+ if (prop in extObj) {
19
+ delete (extObj as any)[prop];
20
+ }
21
+ (baseObj as any)[prop] = value;
22
+ return true;
23
+ },
24
+ deleteProperty(_target, prop) {
25
+ let success = false;
26
+ if (prop in extObj) {
27
+ delete (extObj as any)[prop];
28
+ success = true;
29
+ }
30
+ if (prop in baseObj) {
31
+ delete (baseObj as any)[prop];
32
+ success = true;
33
+ }
34
+ return success;
35
+ },
36
+ ownKeys(_target) {
37
+ const baseKeys = Reflect.ownKeys(baseObj);
38
+ const extKeys = Reflect.ownKeys(extObj);
39
+ const extKeysSet = new Set(extKeys);
40
+ return [...baseKeys.filter((k) => !extKeysSet.has(k)), ...extKeys];
41
+ },
42
+ defineProperty(_target, prop, desc) {
43
+ if (prop in extObj) {
44
+ delete (extObj as any)[prop];
45
+ }
46
+ Reflect.defineProperty(baseObj, prop, desc);
47
+ return true;
48
+ },
49
+ getOwnPropertyDescriptor(_target, prop) {
50
+ if (prop in extObj) {
51
+ return Reflect.getOwnPropertyDescriptor(extObj, prop);
52
+ } else {
53
+ return Reflect.getOwnPropertyDescriptor(baseObj, prop);
54
+ }
55
+ },
56
+ has(_target, prop) {
57
+ return prop in extObj || prop in baseObj;
58
+ },
59
+ }) as any;
60
+ }
@@ -0,0 +1,55 @@
1
+ // Copyright 2018-2024 the Deno authors. All rights reserved. MIT license.
2
+ // This module is browser compatible.
3
+ import { AssertionError } from "./assertion_error.js";
4
+
5
+ /**
6
+ * Make an assertion that `actual` and `expected` are almost equal numbers
7
+ * through a given tolerance. It can be used to take into account IEEE-754
8
+ * double-precision floating-point representation limitations. If the values
9
+ * are not almost equal then throw.
10
+ *
11
+ * The default tolerance is one hundred thousandth of a percent of the
12
+ * expected value.
13
+ *
14
+ * @example Usage
15
+ * ```ts ignore
16
+ * import { assertAlmostEquals } from "@std/assert";
17
+ *
18
+ * assertAlmostEquals(0.01, 0.02); // Throws
19
+ * assertAlmostEquals(1e-8, 1e-9); // Throws
20
+ * assertAlmostEquals(1.000000001e-8, 1.000000002e-8); // Doesn't throw
21
+ * assertAlmostEquals(0.01, 0.02, 0.1); // Doesn't throw
22
+ * assertAlmostEquals(0.1 + 0.2, 0.3, 1e-16); // Doesn't throw
23
+ * assertAlmostEquals(0.1 + 0.2, 0.3, 1e-17); // Throws
24
+ * ```
25
+ *
26
+ * @param actual The actual value to compare.
27
+ * @param expected The expected value to compare.
28
+ * @param tolerance The tolerance to consider the values almost equal. The
29
+ * default is one hundred thousandth of a percent of the expected value.
30
+ * @param msg The optional message to include in the error.
31
+ */
32
+ export function assertAlmostEquals(
33
+ actual: number,
34
+ expected: number,
35
+ tolerance?: number,
36
+ msg?: string,
37
+ ) {
38
+ if (Object.is(actual, expected)) {
39
+ return;
40
+ }
41
+ const delta = Math.abs(expected - actual);
42
+ if (tolerance === undefined) {
43
+ tolerance = isFinite(expected) ? Math.abs(expected * 1e-7) : 1e-7;
44
+ }
45
+ if (delta <= tolerance) {
46
+ return;
47
+ }
48
+
49
+ const msgSuffix = msg ? `: ${msg}` : ".";
50
+ const f = (n: number) => Number.isInteger(n) ? n : n.toExponential();
51
+ throw new AssertionError(
52
+ `Expected actual: "${f(actual)}" to be close to "${f(expected)}": \
53
+ delta "${f(delta)}" is greater than "${f(tolerance)}"${msgSuffix}`,
54
+ );
55
+ }
@@ -0,0 +1,57 @@
1
+ // Copyright 2018-2024 the Deno authors. All rights reserved. MIT license.
2
+ // This module is browser compatible.
3
+ import { equal } from "./equal.js";
4
+ import { format } from "../../internal/1.0.5/format.js";
5
+ import { AssertionError } from "./assertion_error.js";
6
+
7
+ /** An array-like object (`Array`, `Uint8Array`, `NodeList`, etc.) that is not a string */
8
+ export type ArrayLikeArg<T> = ArrayLike<T> & object;
9
+
10
+ /**
11
+ * Make an assertion that `actual` includes the `expected` values. If not then
12
+ * an error will be thrown.
13
+ *
14
+ * Type parameter can be specified to ensure values under comparison have the
15
+ * same type.
16
+ *
17
+ * @example Usage
18
+ * ```ts ignore
19
+ * import { assertArrayIncludes } from "@std/assert";
20
+ *
21
+ * assertArrayIncludes([1, 2], [2]); // Doesn't throw
22
+ * assertArrayIncludes([1, 2], [3]); // Throws
23
+ * ```
24
+ *
25
+ * @typeParam T The type of the elements in the array to compare.
26
+ * @param actual The array-like object to check for.
27
+ * @param expected The array-like object to check for.
28
+ * @param msg The optional message to display if the assertion fails.
29
+ */
30
+ export function assertArrayIncludes<T>(
31
+ actual: ArrayLikeArg<T>,
32
+ expected: ArrayLikeArg<T>,
33
+ msg?: string,
34
+ ) {
35
+ const missing: unknown[] = [];
36
+ for (let i = 0; i < expected.length; i++) {
37
+ let found = false;
38
+ for (let j = 0; j < actual.length; j++) {
39
+ if (equal(expected[i], actual[j])) {
40
+ found = true;
41
+ break;
42
+ }
43
+ }
44
+ if (!found) {
45
+ missing.push(expected[i]);
46
+ }
47
+ }
48
+ if (missing.length === 0) {
49
+ return;
50
+ }
51
+
52
+ const msgSuffix = msg ? `: ${msg}` : ".";
53
+ msg = `Expected actual: "${format(actual)}" to include: "${
54
+ format(expected)
55
+ }"${msgSuffix}\nmissing: ${format(missing)}`;
56
+ throw new AssertionError(msg);
57
+ }
@@ -0,0 +1,23 @@
1
+ // Copyright 2018-2024 the Deno authors. All rights reserved. MIT license.
2
+ // This module is browser compatible.
3
+ import { AssertionError } from "./assertion_error.js";
4
+
5
+ /**
6
+ * Make an assertion, error will be thrown if `expr` does not have truthy value.
7
+ *
8
+ * @example Usage
9
+ * ```ts ignore
10
+ * import { assert } from "@std/assert";
11
+ *
12
+ * assert("hello".includes("ello")); // Doesn't throw
13
+ * assert("hello".includes("world")); // Throws
14
+ * ```
15
+ *
16
+ * @param expr The expression to test.
17
+ * @param msg The optional message to display if the assertion fails.
18
+ */
19
+ export function assert(expr: unknown, msg = ""): asserts expr {
20
+ if (!expr) {
21
+ throw new AssertionError(msg);
22
+ }
23
+ }
@@ -0,0 +1,31 @@
1
+ // Copyright 2018-2024 the Deno authors. All rights reserved. MIT license.
2
+ // This module is browser compatible.
3
+
4
+ /**
5
+ * Error thrown when an assertion fails.
6
+ *
7
+ * @example Usage
8
+ * ```ts ignore
9
+ * import { AssertionError } from "@std/assert";
10
+ *
11
+ * try {
12
+ * throw new AssertionError("foo", { cause: "bar" });
13
+ * } catch (error) {
14
+ * if (error instanceof AssertionError) {
15
+ * error.message === "foo"; // true
16
+ * error.cause === "bar"; // true
17
+ * }
18
+ * }
19
+ * ```
20
+ */
21
+ export class AssertionError extends Error {
22
+ /** Constructs a new instance.
23
+ *
24
+ * @param message The error message.
25
+ * @param options Additional options. This argument is still unstable. It may change in the future release.
26
+ */
27
+ constructor(message: string, options?: ErrorOptions) {
28
+ super(message, options);
29
+ this.name = "AssertionError";
30
+ }
31
+ }
@@ -0,0 +1,210 @@
1
+ // Copyright 2018-2024 the Deno authors. All rights reserved. MIT license.
2
+ // This module is browser compatible.
3
+ import * as dntShim from "../../../../../_dnt.shims.js";
4
+
5
+
6
+ type KeyedCollection = Set<unknown> | Map<unknown, unknown>;
7
+ function isKeyedCollection(x: unknown): x is KeyedCollection {
8
+ return x instanceof Set || x instanceof Map;
9
+ }
10
+
11
+ function prototypesEqual(a: object, b: object) {
12
+ const pa = Object.getPrototypeOf(a);
13
+ const pb = Object.getPrototypeOf(b);
14
+ return pa === pb ||
15
+ pa === Object.prototype && pb === null ||
16
+ pa === null && pb === Object.prototype;
17
+ }
18
+
19
+ function isBasicObjectOrArray(obj: object) {
20
+ const proto = Object.getPrototypeOf(obj);
21
+ return proto === null || proto === Object.prototype ||
22
+ proto === Array.prototype;
23
+ }
24
+
25
+ // Slightly faster than Reflect.ownKeys in V8 as of 12.9.202.13-rusty (2024-10-28)
26
+ function ownKeys(obj: object) {
27
+ return [
28
+ ...Object.getOwnPropertyNames(obj),
29
+ ...Object.getOwnPropertySymbols(obj),
30
+ ];
31
+ }
32
+
33
+ function getKeysDeep(obj: object) {
34
+ const keys = new Set<string | symbol>();
35
+
36
+ while (obj !== Object.prototype && obj !== Array.prototype && obj != null) {
37
+ for (const key of ownKeys(obj)) {
38
+ keys.add(key);
39
+ }
40
+ obj = Object.getPrototypeOf(obj);
41
+ }
42
+
43
+ return keys;
44
+ }
45
+
46
+ // deno-lint-ignore no-explicit-any
47
+ const Temporal: any = (dntShim.dntGlobalThis as any).Temporal ??
48
+ new Proxy({}, { get: () => {} });
49
+
50
+ /** A non-exhaustive list of prototypes that can be accurately fast-path compared with `String(instance)` */
51
+ const stringComparablePrototypes = new Set<unknown>(
52
+ [
53
+ Intl.Locale,
54
+ RegExp,
55
+ Temporal.Duration,
56
+ Temporal.Instant,
57
+ Temporal.PlainDate,
58
+ Temporal.PlainDateTime,
59
+ Temporal.PlainTime,
60
+ Temporal.PlainYearMonth,
61
+ Temporal.PlainMonthDay,
62
+ Temporal.ZonedDateTime,
63
+ URL,
64
+ URLSearchParams,
65
+ ].filter((x) => x != null).map((x) => x.prototype),
66
+ );
67
+
68
+ function isPrimitive(x: unknown) {
69
+ return typeof x === "string" ||
70
+ typeof x === "number" ||
71
+ typeof x === "boolean" ||
72
+ typeof x === "bigint" ||
73
+ typeof x === "symbol" ||
74
+ x == null;
75
+ }
76
+
77
+ type TypedArray = Pick<Uint8Array | BigUint64Array, "length" | number>;
78
+ const TypedArray = Object.getPrototypeOf(Uint8Array);
79
+ function compareTypedArrays(a: TypedArray, b: TypedArray) {
80
+ if (a.length !== b.length) return false;
81
+ for (let i = 0; i < b.length; i++) {
82
+ if (!sameValueZero(a[i], b[i])) return false;
83
+ }
84
+ return true;
85
+ }
86
+
87
+ /** Check both strict equality (`0 == -0`) and `Object.is` (`NaN == NaN`) */
88
+ function sameValueZero(a: unknown, b: unknown) {
89
+ return a === b || Object.is(a, b);
90
+ }
91
+
92
+ /**
93
+ * Deep equality comparison used in assertions.
94
+ *
95
+ * @param a The actual value
96
+ * @param b The expected value
97
+ * @returns `true` if the values are deeply equal, `false` otherwise
98
+ *
99
+ * @example Usage
100
+ * ```ts
101
+ * import { equal } from "@std/assert/equal";
102
+ *
103
+ * equal({ foo: "bar" }, { foo: "bar" }); // Returns `true`
104
+ * equal({ foo: "bar" }, { foo: "baz" }); // Returns `false`
105
+ * ```
106
+ */
107
+ export function equal(a: unknown, b: unknown): boolean {
108
+ const seen = new Map<unknown, unknown>();
109
+ return (function compare(a: unknown, b: unknown): boolean {
110
+ if (sameValueZero(a, b)) return true;
111
+ if (isPrimitive(a) || isPrimitive(b)) return false;
112
+
113
+ if (a instanceof Date && b instanceof Date) {
114
+ return Object.is(a.getTime(), b.getTime());
115
+ }
116
+ if (a && typeof a === "object" && b && typeof b === "object") {
117
+ if (!prototypesEqual(a, b)) {
118
+ return false;
119
+ }
120
+ if (a instanceof TypedArray) {
121
+ return compareTypedArrays(a as TypedArray, b as TypedArray);
122
+ }
123
+ if (a instanceof WeakMap) {
124
+ throw new TypeError("cannot compare WeakMap instances");
125
+ }
126
+ if (a instanceof WeakSet) {
127
+ throw new TypeError("cannot compare WeakSet instances");
128
+ }
129
+ if (a instanceof WeakRef) {
130
+ return compare(a.deref(), (b as WeakRef<WeakKey>).deref());
131
+ }
132
+ if (seen.get(a) === b) {
133
+ return true;
134
+ }
135
+ if (Object.keys(a).length !== Object.keys(b).length) {
136
+ return false;
137
+ }
138
+ seen.set(a, b);
139
+ if (isKeyedCollection(a) && isKeyedCollection(b)) {
140
+ if (a.size !== b.size) {
141
+ return false;
142
+ }
143
+
144
+ const aKeys = [...a.keys()];
145
+ const primitiveKeysFastPath = aKeys.every(isPrimitive);
146
+ if (primitiveKeysFastPath) {
147
+ if (a instanceof Set) {
148
+ return a.symmetricDifference(b).size === 0;
149
+ }
150
+
151
+ for (const key of aKeys) {
152
+ if (
153
+ !b.has(key) ||
154
+ !compare(a.get(key), (b as Map<unknown, unknown>).get(key))
155
+ ) {
156
+ return false;
157
+ }
158
+ }
159
+ return true;
160
+ }
161
+
162
+ let unmatchedEntries = a.size;
163
+
164
+ for (const [aKey, aValue] of a.entries()) {
165
+ for (const [bKey, bValue] of b.entries()) {
166
+ /* Given that Map keys can be references, we need
167
+ * to ensure that they are also deeply equal */
168
+
169
+ if (!compare(aKey, bKey)) continue;
170
+
171
+ if (
172
+ (aKey === aValue && bKey === bValue) ||
173
+ (compare(aValue, bValue))
174
+ ) {
175
+ unmatchedEntries--;
176
+ break;
177
+ }
178
+ }
179
+ }
180
+
181
+ return unmatchedEntries === 0;
182
+ }
183
+
184
+ let keys: Iterable<string | symbol>;
185
+
186
+ if (isBasicObjectOrArray(a)) {
187
+ // fast path
188
+ keys = ownKeys({ ...a, ...b });
189
+ } else if (stringComparablePrototypes.has(Object.getPrototypeOf(a))) {
190
+ // medium path
191
+ return String(a) === String(b);
192
+ } else {
193
+ // slow path
194
+ keys = getKeysDeep(a).union(getKeysDeep(b));
195
+ }
196
+
197
+ for (const key of keys) {
198
+ type Key = keyof typeof a;
199
+ if (!compare(a[key as Key], b[key as Key])) {
200
+ return false;
201
+ }
202
+ if (((key in a) && (!(key in b))) || ((key in b) && (!(key in a)))) {
203
+ return false;
204
+ }
205
+ }
206
+ return true;
207
+ }
208
+ return false;
209
+ })(a, b);
210
+ }
@@ -0,0 +1,52 @@
1
+ // Copyright 2018-2024 the Deno authors. All rights reserved. MIT license.
2
+ // This module is browser compatible.
3
+ import { equal } from "./equal.js";
4
+ import { buildMessage } from "../../internal/1.0.5/build_message.js";
5
+ import { diff } from "../../internal/1.0.5/diff.js";
6
+ import { diffStr } from "../../internal/1.0.5/diff_str.js";
7
+ import { format } from "../../internal/1.0.5/format.js";
8
+
9
+ import { AssertionError } from "./assertion_error.js";
10
+
11
+ /**
12
+ * Make an assertion that `actual` and `expected` are equal, deeply. If not
13
+ * deeply equal, then throw.
14
+ *
15
+ * Type parameter can be specified to ensure values under comparison have the
16
+ * same type.
17
+ *
18
+ * @example Usage
19
+ * ```ts ignore
20
+ * import { assertEquals } from "@std/assert";
21
+ *
22
+ * assertEquals("world", "world"); // Doesn't throw
23
+ * assertEquals("hello", "world"); // Throws
24
+ * ```
25
+ *
26
+ * @typeParam T The type of the values to compare. This is usually inferred.
27
+ * @param actual The actual value to compare.
28
+ * @param expected The expected value to compare.
29
+ * @param msg The optional message to display if the assertion fails.
30
+ */
31
+ export function assertEquals<T>(
32
+ actual: T,
33
+ expected: T,
34
+ msg?: string,
35
+ ) {
36
+ if (equal(actual, expected)) {
37
+ return;
38
+ }
39
+ const msgSuffix = msg ? `: ${msg}` : ".";
40
+ let message = `Values are not equal${msgSuffix}`;
41
+
42
+ const actualString = format(actual);
43
+ const expectedString = format(expected);
44
+ const stringDiff = (typeof actual === "string") &&
45
+ (typeof expected === "string");
46
+ const diffResult = stringDiff
47
+ ? diffStr(actual as string, expected as string)
48
+ : diff(actualString.split("\n"), expectedString.split("\n"));
49
+ const diffMsg = buildMessage(diffResult, { stringDiff }).join("\n");
50
+ message = `${message}\n${diffMsg}`;
51
+ throw new AssertionError(message);
52
+ }
@@ -0,0 +1,31 @@
1
+ // Copyright 2018-2024 the Deno authors. All rights reserved. MIT license.
2
+ // This module is browser compatible.
3
+ import { AssertionError } from "./assertion_error.js";
4
+
5
+ /**
6
+ * Make an assertion that actual is not null or undefined.
7
+ * If not then throw.
8
+ *
9
+ * @example Usage
10
+ * ```ts ignore
11
+ * import { assertExists } from "@std/assert";
12
+ *
13
+ * assertExists("something"); // Doesn't throw
14
+ * assertExists(undefined); // Throws
15
+ * ```
16
+ *
17
+ * @typeParam T The type of the actual value.
18
+ * @param actual The actual value to check.
19
+ * @param msg The optional message to include in the error if the assertion fails.
20
+ */
21
+ export function assertExists<T>(
22
+ actual: T,
23
+ msg?: string,
24
+ ): asserts actual is NonNullable<T> {
25
+ if (actual === undefined || actual === null) {
26
+ const msgSuffix = msg ? `: ${msg}` : ".";
27
+ msg =
28
+ `Expected actual: "${actual}" to not be null or undefined${msgSuffix}`;
29
+ throw new AssertionError(msg);
30
+ }
31
+ }
@@ -0,0 +1,21 @@
1
+ // Copyright 2018-2024 the Deno authors. All rights reserved. MIT license.
2
+ // This module is browser compatible.
3
+ import { AssertionError } from "./assertion_error.js";
4
+
5
+ /**
6
+ * Forcefully throws a failed assertion.
7
+ *
8
+ * @example Usage
9
+ * ```ts ignore
10
+ * import { fail } from "@std/assert";
11
+ *
12
+ * fail("Deliberately failed!"); // Throws
13
+ * ```
14
+ *
15
+ * @param msg Optional message to include in the error.
16
+ * @returns Never returns, always throws.
17
+ */
18
+ export function fail(msg?: string): never {
19
+ const msgSuffix = msg ? `: ${msg}` : ".";
20
+ throw new AssertionError(`Failed assertion${msgSuffix}`);
21
+ }
@@ -0,0 +1,26 @@
1
+ // Copyright 2018-2024 the Deno authors. All rights reserved. MIT license.
2
+ // This module is browser compatible.
3
+ import { AssertionError } from "./assertion_error.js";
4
+
5
+ /** Assertion condition for {@linkcode assertFalse}. */
6
+ export type Falsy = false | 0 | 0n | "" | null | undefined;
7
+
8
+ /**
9
+ * Make an assertion, error will be thrown if `expr` have truthy value.
10
+ *
11
+ * @example Usage
12
+ * ```ts ignore
13
+ * import { assertFalse } from "@std/assert";
14
+ *
15
+ * assertFalse(false); // Doesn't throw
16
+ * assertFalse(true); // Throws
17
+ * ```
18
+ *
19
+ * @param expr The expression to test.
20
+ * @param msg The optional message to display if the assertion fails.
21
+ */
22
+ export function assertFalse(expr: unknown, msg = ""): asserts expr is Falsy {
23
+ if (expr) {
24
+ throw new AssertionError(msg);
25
+ }
26
+ }
@@ -0,0 +1,30 @@
1
+ // Copyright 2018-2024 the Deno authors. All rights reserved. MIT license.
2
+ // This module is browser compatible.
3
+ import { format } from "../../internal/1.0.5/format.js";
4
+ import { AssertionError } from "./assertion_error.js";
5
+
6
+ /**
7
+ * Make an assertion that `actual` is greater than `expected`.
8
+ * If not then throw.
9
+ *
10
+ * @example Usage
11
+ * ```ts ignore
12
+ * import { assertGreater } from "@std/assert";
13
+ *
14
+ * assertGreater(2, 1); // Doesn't throw
15
+ * assertGreater(1, 1); // Throws
16
+ * assertGreater(0, 1); // Throws
17
+ * ```
18
+ *
19
+ * @typeParam T The type of the values to compare.
20
+ * @param actual The actual value to compare.
21
+ * @param expected The expected value to compare.
22
+ * @param msg The optional message to display if the assertion fails.
23
+ */
24
+ export function assertGreater<T>(actual: T, expected: T, msg?: string) {
25
+ if (actual > expected) return;
26
+
27
+ const actualString = format(actual);
28
+ const expectedString = format(expected);
29
+ throw new AssertionError(msg ?? `Expect ${actualString} > ${expectedString}`);
30
+ }