@attocash/cli 0.1.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 (400) hide show
  1. package/LICENSE +28 -0
  2. package/README.md +707 -0
  3. package/dist/application/app.d.ts +138 -0
  4. package/dist/application/app.js +654 -0
  5. package/dist/application/operations.d.ts +9 -0
  6. package/dist/application/operations.js +96 -0
  7. package/dist/cli/cli.d.ts +1 -0
  8. package/dist/cli/cli.js +460 -0
  9. package/dist/cli/help.d.ts +4 -0
  10. package/dist/cli/help.js +49 -0
  11. package/dist/cli/main.d.ts +2 -0
  12. package/dist/cli/main.js +13 -0
  13. package/dist/cli/onboarding.d.ts +14 -0
  14. package/dist/cli/onboarding.js +144 -0
  15. package/dist/cli/output.d.ts +2 -0
  16. package/dist/cli/output.js +231 -0
  17. package/dist/cli/terminal.d.ts +6 -0
  18. package/dist/cli/terminal.js +92 -0
  19. package/dist/cli/update-check.d.ts +1 -0
  20. package/dist/cli/update-check.js +12 -0
  21. package/dist/cli/updates.d.ts +2 -0
  22. package/dist/cli/updates.js +98 -0
  23. package/dist/core.d.ts +14 -0
  24. package/dist/core.js +14 -0
  25. package/dist/doctor/credential-probe.d.ts +7 -0
  26. package/dist/doctor/credential-probe.js +49 -0
  27. package/dist/doctor/doctor.d.ts +4 -0
  28. package/dist/doctor/doctor.js +213 -0
  29. package/dist/doctor/keyring.d.ts +7 -0
  30. package/dist/doctor/keyring.js +150 -0
  31. package/dist/doctor/profile.d.ts +19 -0
  32. package/dist/doctor/profile.js +73 -0
  33. package/dist/doctor/types.d.ts +40 -0
  34. package/dist/doctor/types.js +1 -0
  35. package/dist/domain/amount.d.ts +6 -0
  36. package/dist/domain/amount.js +27 -0
  37. package/dist/domain/errors.d.ts +10 -0
  38. package/dist/domain/errors.js +16 -0
  39. package/dist/labels/directory.d.ts +87 -0
  40. package/dist/labels/directory.js +140 -0
  41. package/dist/labels/personal.d.ts +17 -0
  42. package/dist/labels/personal.js +56 -0
  43. package/dist/labels/presentation.d.ts +154 -0
  44. package/dist/labels/presentation.js +90 -0
  45. package/dist/network/reader.d.ts +31 -0
  46. package/dist/network/reader.js +370 -0
  47. package/dist/network/retry.d.ts +7 -0
  48. package/dist/network/retry.js +53 -0
  49. package/dist/network/work.d.ts +3 -0
  50. package/dist/network/work.js +66 -0
  51. package/dist/pricing/market.d.ts +29 -0
  52. package/dist/pricing/market.js +150 -0
  53. package/dist/pricing/terms.d.ts +6 -0
  54. package/dist/pricing/terms.js +12 -0
  55. package/dist/spending/destination.d.ts +16 -0
  56. package/dist/spending/destination.js +42 -0
  57. package/dist/spending/journal.d.ts +28 -0
  58. package/dist/spending/journal.js +69 -0
  59. package/dist/spending/ledger.d.ts +118 -0
  60. package/dist/spending/ledger.js +444 -0
  61. package/dist/spending/payments.d.ts +67 -0
  62. package/dist/spending/payments.js +424 -0
  63. package/dist/spending/pool.d.ts +13 -0
  64. package/dist/spending/pool.js +38 -0
  65. package/dist/spending/reconcile.d.ts +18 -0
  66. package/dist/spending/reconcile.js +64 -0
  67. package/dist/storage/profiles.d.ts +13 -0
  68. package/dist/storage/profiles.js +86 -0
  69. package/dist/storage/secrets.d.ts +16 -0
  70. package/dist/storage/secrets.js +104 -0
  71. package/dist/storage/state.d.ts +32 -0
  72. package/dist/storage/state.js +255 -0
  73. package/dist/wallet/auto-receive.d.ts +57 -0
  74. package/dist/wallet/auto-receive.js +140 -0
  75. package/dist/wallet/defaults.d.ts +3 -0
  76. package/dist/wallet/defaults.js +26 -0
  77. package/dist/wallet/signing.d.ts +17 -0
  78. package/dist/wallet/signing.js +128 -0
  79. package/dist/wallet/types.d.ts +65 -0
  80. package/dist/wallet/types.js +1 -0
  81. package/dist/wallet/work.d.ts +29 -0
  82. package/dist/wallet/work.js +154 -0
  83. package/dist/watches/manager.d.ts +75 -0
  84. package/dist/watches/manager.js +197 -0
  85. package/node_modules/@attocash/commons-core/Kotlin-DateTime-library-kotlinx-datetime.mjs +6678 -0
  86. package/node_modules/@attocash/commons-core/Kotlin-DateTime-library-kotlinx-datetime.mjs.map +1 -0
  87. package/node_modules/@attocash/commons-core/LICENSE +28 -0
  88. package/node_modules/@attocash/commons-core/README.md +118 -0
  89. package/node_modules/@attocash/commons-core/commons-commons-core.d.mts +1036 -0
  90. package/node_modules/@attocash/commons-core/commons-commons-core.mjs +7701 -0
  91. package/node_modules/@attocash/commons-core/commons-commons-core.mjs.map +1 -0
  92. package/node_modules/@attocash/commons-core/kotlin-kotlin-stdlib.mjs +17681 -0
  93. package/node_modules/@attocash/commons-core/kotlin-kotlin-stdlib.mjs.map +1 -0
  94. package/node_modules/@attocash/commons-core/kotlin_org_jetbrains_kotlin_kotlin_dom_api_compat.mjs +4 -0
  95. package/node_modules/@attocash/commons-core/kotlin_org_jetbrains_kotlin_kotlin_dom_api_compat.mjs.map +1 -0
  96. package/node_modules/@attocash/commons-core/kotlinx-io-kotlinx-io-bytestring.mjs +209 -0
  97. package/node_modules/@attocash/commons-core/kotlinx-io-kotlinx-io-bytestring.mjs.map +1 -0
  98. package/node_modules/@attocash/commons-core/kotlinx-io-kotlinx-io-core.mjs +2284 -0
  99. package/node_modules/@attocash/commons-core/kotlinx-io-kotlinx-io-core.mjs.map +1 -0
  100. package/node_modules/@attocash/commons-core/kotlinx-serialization-kotlinx-serialization-core.mjs +6042 -0
  101. package/node_modules/@attocash/commons-core/kotlinx-serialization-kotlinx-serialization-core.mjs.map +1 -0
  102. package/node_modules/@attocash/commons-core/kotlinx-serialization-kotlinx-serialization-json.mjs +5294 -0
  103. package/node_modules/@attocash/commons-core/kotlinx-serialization-kotlinx-serialization-json.mjs.map +1 -0
  104. package/node_modules/@attocash/commons-core/package.json +27 -0
  105. package/node_modules/@attocash/commons-node/LICENSE +28 -0
  106. package/node_modules/@attocash/commons-node/README.md +92 -0
  107. package/node_modules/@attocash/commons-node/commons-commons-node.d.mts +255 -0
  108. package/node_modules/@attocash/commons-node/commons-commons-node.mjs +2977 -0
  109. package/node_modules/@attocash/commons-node/commons-commons-node.mjs.map +1 -0
  110. package/node_modules/@attocash/commons-node/kotlin-logging.mjs +432 -0
  111. package/node_modules/@attocash/commons-node/kotlin-logging.mjs.map +1 -0
  112. package/node_modules/@attocash/commons-node/kotlinx-serialization-kotlinx-serialization-json.mjs +5294 -0
  113. package/node_modules/@attocash/commons-node/kotlinx-serialization-kotlinx-serialization-json.mjs.map +1 -0
  114. package/node_modules/@attocash/commons-node/package.json +29 -0
  115. package/node_modules/@attocash/commons-node-remote/LICENSE +28 -0
  116. package/node_modules/@attocash/commons-node-remote/README.md +61 -0
  117. package/node_modules/@attocash/commons-node-remote/commons-commons-node-remote.d.mts +122 -0
  118. package/node_modules/@attocash/commons-node-remote/commons-commons-node-remote.mjs +1810 -0
  119. package/node_modules/@attocash/commons-node-remote/commons-commons-node-remote.mjs.map +1 -0
  120. package/node_modules/@attocash/commons-node-remote/kotlin-logging.mjs +432 -0
  121. package/node_modules/@attocash/commons-node-remote/kotlin-logging.mjs.map +1 -0
  122. package/node_modules/@attocash/commons-node-remote/kotlinx-browser.mjs +8 -0
  123. package/node_modules/@attocash/commons-node-remote/kotlinx-browser.mjs.map +1 -0
  124. package/node_modules/@attocash/commons-node-remote/kotlinx-serialization-kotlinx-serialization-json-io.mjs +4 -0
  125. package/node_modules/@attocash/commons-node-remote/kotlinx-serialization-kotlinx-serialization-json-io.mjs.map +1 -0
  126. package/node_modules/@attocash/commons-node-remote/kotlinx-serialization-kotlinx-serialization-json.mjs +5294 -0
  127. package/node_modules/@attocash/commons-node-remote/kotlinx-serialization-kotlinx-serialization-json.mjs.map +1 -0
  128. package/node_modules/@attocash/commons-node-remote/package.json +31 -0
  129. package/node_modules/@attocash/commons-transport/LICENSE +28 -0
  130. package/node_modules/@attocash/commons-transport/README.md +5 -0
  131. package/node_modules/@attocash/commons-transport/commons-commons-transport.d.mts +64 -0
  132. package/node_modules/@attocash/commons-transport/commons-commons-transport.mjs +249 -0
  133. package/node_modules/@attocash/commons-transport/commons-commons-transport.mjs.map +1 -0
  134. package/node_modules/@attocash/commons-transport/kotlinx-atomicfu.mjs +263 -0
  135. package/node_modules/@attocash/commons-transport/kotlinx-atomicfu.mjs.map +1 -0
  136. package/node_modules/@attocash/commons-transport/kotlinx-browser.mjs +8 -0
  137. package/node_modules/@attocash/commons-transport/kotlinx-browser.mjs.map +1 -0
  138. package/node_modules/@attocash/commons-transport/kotlinx-coroutines-core.mjs +11604 -0
  139. package/node_modules/@attocash/commons-transport/kotlinx-coroutines-core.mjs.map +1 -0
  140. package/node_modules/@attocash/commons-transport/kotlinx-serialization-kotlinx-serialization-json-io.mjs +4 -0
  141. package/node_modules/@attocash/commons-transport/kotlinx-serialization-kotlinx-serialization-json-io.mjs.map +1 -0
  142. package/node_modules/@attocash/commons-transport/kotlinx-serialization-kotlinx-serialization-json.mjs +5294 -0
  143. package/node_modules/@attocash/commons-transport/kotlinx-serialization-kotlinx-serialization-json.mjs.map +1 -0
  144. package/node_modules/@attocash/commons-transport/ktor-ktor-client-content-negotiation.mjs +499 -0
  145. package/node_modules/@attocash/commons-transport/ktor-ktor-client-content-negotiation.mjs.map +1 -0
  146. package/node_modules/@attocash/commons-transport/ktor-ktor-client-core.mjs +6456 -0
  147. package/node_modules/@attocash/commons-transport/ktor-ktor-client-core.mjs.map +1 -0
  148. package/node_modules/@attocash/commons-transport/ktor-ktor-events.mjs +83 -0
  149. package/node_modules/@attocash/commons-transport/ktor-ktor-events.mjs.map +1 -0
  150. package/node_modules/@attocash/commons-transport/ktor-ktor-http-cio.mjs +1714 -0
  151. package/node_modules/@attocash/commons-transport/ktor-ktor-http-cio.mjs.map +1 -0
  152. package/node_modules/@attocash/commons-transport/ktor-ktor-http.mjs +3197 -0
  153. package/node_modules/@attocash/commons-transport/ktor-ktor-http.mjs.map +1 -0
  154. package/node_modules/@attocash/commons-transport/ktor-ktor-io.mjs +2290 -0
  155. package/node_modules/@attocash/commons-transport/ktor-ktor-io.mjs.map +1 -0
  156. package/node_modules/@attocash/commons-transport/ktor-ktor-serialization-kotlinx-json.mjs +46 -0
  157. package/node_modules/@attocash/commons-transport/ktor-ktor-serialization-kotlinx-json.mjs.map +1 -0
  158. package/node_modules/@attocash/commons-transport/ktor-ktor-serialization-kotlinx.mjs +482 -0
  159. package/node_modules/@attocash/commons-transport/ktor-ktor-serialization-kotlinx.mjs.map +1 -0
  160. package/node_modules/@attocash/commons-transport/ktor-ktor-serialization.mjs +165 -0
  161. package/node_modules/@attocash/commons-transport/ktor-ktor-serialization.mjs.map +1 -0
  162. package/node_modules/@attocash/commons-transport/ktor-ktor-sse.mjs +4 -0
  163. package/node_modules/@attocash/commons-transport/ktor-ktor-sse.mjs.map +1 -0
  164. package/node_modules/@attocash/commons-transport/ktor-ktor-utils.mjs +3222 -0
  165. package/node_modules/@attocash/commons-transport/ktor-ktor-utils.mjs.map +1 -0
  166. package/node_modules/@attocash/commons-transport/ktor-ktor-websocket-serialization.mjs +4 -0
  167. package/node_modules/@attocash/commons-transport/ktor-ktor-websocket-serialization.mjs.map +1 -0
  168. package/node_modules/@attocash/commons-transport/ktor-ktor-websockets.mjs +1485 -0
  169. package/node_modules/@attocash/commons-transport/ktor-ktor-websockets.mjs.map +1 -0
  170. package/node_modules/@attocash/commons-transport/package.json +29 -0
  171. package/node_modules/@attocash/commons-worker/LICENSE +28 -0
  172. package/node_modules/@attocash/commons-worker/README.md +48 -0
  173. package/node_modules/@attocash/commons-worker/commons-commons-worker.d.mts +73 -0
  174. package/node_modules/@attocash/commons-worker/commons-commons-worker.mjs +702 -0
  175. package/node_modules/@attocash/commons-worker/commons-commons-worker.mjs.map +1 -0
  176. package/node_modules/@attocash/commons-worker/kotlin-logging.mjs +432 -0
  177. package/node_modules/@attocash/commons-worker/kotlin-logging.mjs.map +1 -0
  178. package/node_modules/@attocash/commons-worker/kotlinx-serialization-kotlinx-serialization-json.mjs +5294 -0
  179. package/node_modules/@attocash/commons-worker/kotlinx-serialization-kotlinx-serialization-json.mjs.map +1 -0
  180. package/node_modules/@attocash/commons-worker/package.json +29 -0
  181. package/node_modules/@attocash/commons-worker-remote/LICENSE +28 -0
  182. package/node_modules/@attocash/commons-worker-remote/README.md +60 -0
  183. package/node_modules/@attocash/commons-worker-remote/commons-commons-worker-remote.d.mts +93 -0
  184. package/node_modules/@attocash/commons-worker-remote/commons-commons-worker-remote.mjs +289 -0
  185. package/node_modules/@attocash/commons-worker-remote/commons-commons-worker-remote.mjs.map +1 -0
  186. package/node_modules/@attocash/commons-worker-remote/kotlin-logging.mjs +432 -0
  187. package/node_modules/@attocash/commons-worker-remote/kotlin-logging.mjs.map +1 -0
  188. package/node_modules/@attocash/commons-worker-remote/kotlinx-browser.mjs +8 -0
  189. package/node_modules/@attocash/commons-worker-remote/kotlinx-browser.mjs.map +1 -0
  190. package/node_modules/@attocash/commons-worker-remote/kotlinx-serialization-kotlinx-serialization-json-io.mjs +4 -0
  191. package/node_modules/@attocash/commons-worker-remote/kotlinx-serialization-kotlinx-serialization-json-io.mjs.map +1 -0
  192. package/node_modules/@attocash/commons-worker-remote/kotlinx-serialization-kotlinx-serialization-json.mjs +5294 -0
  193. package/node_modules/@attocash/commons-worker-remote/kotlinx-serialization-kotlinx-serialization-json.mjs.map +1 -0
  194. package/node_modules/@attocash/commons-worker-remote/package.json +31 -0
  195. package/node_modules/@js-joda/core/CHANGELOG.md +363 -0
  196. package/node_modules/@js-joda/core/CheatSheet.md +947 -0
  197. package/node_modules/@js-joda/core/LICENSE +34 -0
  198. package/node_modules/@js-joda/core/README.md +155 -0
  199. package/node_modules/@js-joda/core/bower.json +21 -0
  200. package/node_modules/@js-joda/core/dist/js-joda.d.ts +2452 -0
  201. package/node_modules/@js-joda/core/dist/js-joda.esm.js +13564 -0
  202. package/node_modules/@js-joda/core/dist/js-joda.flow.js +949 -0
  203. package/node_modules/@js-joda/core/dist/js-joda.js +13630 -0
  204. package/node_modules/@js-joda/core/dist/js-joda.js.map +1 -0
  205. package/node_modules/@js-joda/core/dist/js-joda.min.js +5 -0
  206. package/node_modules/@js-joda/core/package.json +76 -0
  207. package/node_modules/@js-joda/core/src/Clock.js +330 -0
  208. package/node_modules/@js-joda/core/src/DayOfWeek.js +451 -0
  209. package/node_modules/@js-joda/core/src/Duration.js +1205 -0
  210. package/node_modules/@js-joda/core/src/Enum.js +30 -0
  211. package/node_modules/@js-joda/core/src/Instant.js +1012 -0
  212. package/node_modules/@js-joda/core/src/LocalDate.js +1703 -0
  213. package/node_modules/@js-joda/core/src/LocalDateTime.js +1686 -0
  214. package/node_modules/@js-joda/core/src/LocalTime.js +1415 -0
  215. package/node_modules/@js-joda/core/src/MathUtil.js +236 -0
  216. package/node_modules/@js-joda/core/src/Month.js +600 -0
  217. package/node_modules/@js-joda/core/src/MonthDay.js +730 -0
  218. package/node_modules/@js-joda/core/src/OffsetDateTime.js +757 -0
  219. package/node_modules/@js-joda/core/src/OffsetTime.js +621 -0
  220. package/node_modules/@js-joda/core/src/Period.js +933 -0
  221. package/node_modules/@js-joda/core/src/StringUtil.js +43 -0
  222. package/node_modules/@js-joda/core/src/Year.js +1015 -0
  223. package/node_modules/@js-joda/core/src/YearConstants.js +21 -0
  224. package/node_modules/@js-joda/core/src/YearMonth.js +1096 -0
  225. package/node_modules/@js-joda/core/src/ZoneId.js +236 -0
  226. package/node_modules/@js-joda/core/src/ZoneIdFactory.js +201 -0
  227. package/node_modules/@js-joda/core/src/ZoneOffset.js +486 -0
  228. package/node_modules/@js-joda/core/src/ZoneRegion.js +72 -0
  229. package/node_modules/@js-joda/core/src/ZonedDateTime.js +2007 -0
  230. package/node_modules/@js-joda/core/src/_init.js +68 -0
  231. package/node_modules/@js-joda/core/src/assert.js +33 -0
  232. package/node_modules/@js-joda/core/src/chrono/ChronoLocalDate.js +230 -0
  233. package/node_modules/@js-joda/core/src/chrono/ChronoLocalDateTime.js +130 -0
  234. package/node_modules/@js-joda/core/src/chrono/ChronoZonedDateTime.js +194 -0
  235. package/node_modules/@js-joda/core/src/chrono/IsoChronology.js +235 -0
  236. package/node_modules/@js-joda/core/src/convert.js +83 -0
  237. package/node_modules/@js-joda/core/src/errors.js +54 -0
  238. package/node_modules/@js-joda/core/src/format/DateTimeBuilder.js +535 -0
  239. package/node_modules/@js-joda/core/src/format/DateTimeFormatter.js +728 -0
  240. package/node_modules/@js-joda/core/src/format/DateTimeFormatterBuilder.js +1545 -0
  241. package/node_modules/@js-joda/core/src/format/DateTimeParseContext.js +297 -0
  242. package/node_modules/@js-joda/core/src/format/DateTimePrintContext.js +138 -0
  243. package/node_modules/@js-joda/core/src/format/DecimalStyle.js +113 -0
  244. package/node_modules/@js-joda/core/src/format/EnumMap.js +70 -0
  245. package/node_modules/@js-joda/core/src/format/ParsePosition.js +31 -0
  246. package/node_modules/@js-joda/core/src/format/ResolverStyle.js +93 -0
  247. package/node_modules/@js-joda/core/src/format/SignStyle.js +38 -0
  248. package/node_modules/@js-joda/core/src/format/StringBuilder.js +47 -0
  249. package/node_modules/@js-joda/core/src/format/TextStyle.js +114 -0
  250. package/node_modules/@js-joda/core/src/format/parser/CharLiteralPrinterParser.js +46 -0
  251. package/node_modules/@js-joda/core/src/format/parser/CompositePrinterParser.js +89 -0
  252. package/node_modules/@js-joda/core/src/format/parser/FractionPrinterParser.js +162 -0
  253. package/node_modules/@js-joda/core/src/format/parser/NumberPrinterParser.js +367 -0
  254. package/node_modules/@js-joda/core/src/format/parser/OffsetIdPrinterParser.js +177 -0
  255. package/node_modules/@js-joda/core/src/format/parser/PadPrinterParserDecorator.js +81 -0
  256. package/node_modules/@js-joda/core/src/format/parser/SettingsParser.js +44 -0
  257. package/node_modules/@js-joda/core/src/format/parser/StringLiteralPrinterParser.js +39 -0
  258. package/node_modules/@js-joda/core/src/format/parser/ZoneIdPrinterParser.js +218 -0
  259. package/node_modules/@js-joda/core/src/js-joda.js +210 -0
  260. package/node_modules/@js-joda/core/src/license-preamble.js +3 -0
  261. package/node_modules/@js-joda/core/src/temporal/ChronoField.js +470 -0
  262. package/node_modules/@js-joda/core/src/temporal/ChronoUnit.js +310 -0
  263. package/node_modules/@js-joda/core/src/temporal/DefaultInterfaceTemporal.js +118 -0
  264. package/node_modules/@js-joda/core/src/temporal/IsoFields.js +859 -0
  265. package/node_modules/@js-joda/core/src/temporal/NativeJsTemporal.js +105 -0
  266. package/node_modules/@js-joda/core/src/temporal/Temporal.js +346 -0
  267. package/node_modules/@js-joda/core/src/temporal/TemporalAccessor.js +125 -0
  268. package/node_modules/@js-joda/core/src/temporal/TemporalAdjuster.js +92 -0
  269. package/node_modules/@js-joda/core/src/temporal/TemporalAdjusters.js +464 -0
  270. package/node_modules/@js-joda/core/src/temporal/TemporalAmount.js +166 -0
  271. package/node_modules/@js-joda/core/src/temporal/TemporalField.js +248 -0
  272. package/node_modules/@js-joda/core/src/temporal/TemporalQueries.js +223 -0
  273. package/node_modules/@js-joda/core/src/temporal/TemporalQueriesFactory.js +77 -0
  274. package/node_modules/@js-joda/core/src/temporal/TemporalQuery.js +107 -0
  275. package/node_modules/@js-joda/core/src/temporal/TemporalUnit.js +179 -0
  276. package/node_modules/@js-joda/core/src/temporal/ValueRange.js +257 -0
  277. package/node_modules/@js-joda/core/src/use.js +20 -0
  278. package/node_modules/@js-joda/core/src/zone/SystemDefaultZoneId.js +31 -0
  279. package/node_modules/@js-joda/core/src/zone/SystemDefaultZoneRules.js +162 -0
  280. package/node_modules/@js-joda/core/src/zone/ZoneOffsetTransition.js +289 -0
  281. package/node_modules/@js-joda/core/src/zone/ZoneRules.js +464 -0
  282. package/node_modules/@js-joda/core/src/zone/ZoneRulesProvider.js +36 -0
  283. package/node_modules/@noble/hashes/LICENSE +21 -0
  284. package/node_modules/@noble/hashes/README.md +563 -0
  285. package/node_modules/@noble/hashes/_blake.d.ts +21 -0
  286. package/node_modules/@noble/hashes/_blake.d.ts.map +1 -0
  287. package/node_modules/@noble/hashes/_blake.js +52 -0
  288. package/node_modules/@noble/hashes/_blake.js.map +1 -0
  289. package/node_modules/@noble/hashes/_md.d.ts +99 -0
  290. package/node_modules/@noble/hashes/_md.d.ts.map +1 -0
  291. package/node_modules/@noble/hashes/_md.js +202 -0
  292. package/node_modules/@noble/hashes/_md.js.map +1 -0
  293. package/node_modules/@noble/hashes/_u64.d.ts +63 -0
  294. package/node_modules/@noble/hashes/_u64.d.ts.map +1 -0
  295. package/node_modules/@noble/hashes/_u64.js +84 -0
  296. package/node_modules/@noble/hashes/_u64.js.map +1 -0
  297. package/node_modules/@noble/hashes/argon2.d.ts +112 -0
  298. package/node_modules/@noble/hashes/argon2.d.ts.map +1 -0
  299. package/node_modules/@noble/hashes/argon2.js +517 -0
  300. package/node_modules/@noble/hashes/argon2.js.map +1 -0
  301. package/node_modules/@noble/hashes/blake1.d.ts +156 -0
  302. package/node_modules/@noble/hashes/blake1.d.ts.map +1 -0
  303. package/node_modules/@noble/hashes/blake1.js +560 -0
  304. package/node_modules/@noble/hashes/blake1.js.map +1 -0
  305. package/node_modules/@noble/hashes/blake2.d.ts +184 -0
  306. package/node_modules/@noble/hashes/blake2.d.ts.map +1 -0
  307. package/node_modules/@noble/hashes/blake2.js +501 -0
  308. package/node_modules/@noble/hashes/blake2.js.map +1 -0
  309. package/node_modules/@noble/hashes/blake3.d.ts +68 -0
  310. package/node_modules/@noble/hashes/blake3.d.ts.map +1 -0
  311. package/node_modules/@noble/hashes/blake3.js +284 -0
  312. package/node_modules/@noble/hashes/blake3.js.map +1 -0
  313. package/node_modules/@noble/hashes/eskdf.d.ts +92 -0
  314. package/node_modules/@noble/hashes/eskdf.d.ts.map +1 -0
  315. package/node_modules/@noble/hashes/eskdf.js +218 -0
  316. package/node_modules/@noble/hashes/eskdf.js.map +1 -0
  317. package/node_modules/@noble/hashes/hkdf.d.ts +64 -0
  318. package/node_modules/@noble/hashes/hkdf.d.ts.map +1 -0
  319. package/node_modules/@noble/hashes/hkdf.js +120 -0
  320. package/node_modules/@noble/hashes/hkdf.js.map +1 -0
  321. package/node_modules/@noble/hashes/hmac.d.ts +47 -0
  322. package/node_modules/@noble/hashes/hmac.d.ts.map +1 -0
  323. package/node_modules/@noble/hashes/hmac.js +93 -0
  324. package/node_modules/@noble/hashes/hmac.js.map +1 -0
  325. package/node_modules/@noble/hashes/index.d.ts +2 -0
  326. package/node_modules/@noble/hashes/index.d.ts.map +1 -0
  327. package/node_modules/@noble/hashes/index.js +35 -0
  328. package/node_modules/@noble/hashes/index.js.map +1 -0
  329. package/node_modules/@noble/hashes/legacy.d.ts +102 -0
  330. package/node_modules/@noble/hashes/legacy.d.ts.map +1 -0
  331. package/node_modules/@noble/hashes/legacy.js +327 -0
  332. package/node_modules/@noble/hashes/legacy.js.map +1 -0
  333. package/node_modules/@noble/hashes/package.json +97 -0
  334. package/node_modules/@noble/hashes/pbkdf2.d.ts +56 -0
  335. package/node_modules/@noble/hashes/pbkdf2.d.ts.map +1 -0
  336. package/node_modules/@noble/hashes/pbkdf2.js +135 -0
  337. package/node_modules/@noble/hashes/pbkdf2.js.map +1 -0
  338. package/node_modules/@noble/hashes/scrypt.d.ts +65 -0
  339. package/node_modules/@noble/hashes/scrypt.d.ts.map +1 -0
  340. package/node_modules/@noble/hashes/scrypt.js +257 -0
  341. package/node_modules/@noble/hashes/scrypt.js.map +1 -0
  342. package/node_modules/@noble/hashes/sha2.d.ts +249 -0
  343. package/node_modules/@noble/hashes/sha2.d.ts.map +1 -0
  344. package/node_modules/@noble/hashes/sha2.js +458 -0
  345. package/node_modules/@noble/hashes/sha2.js.map +1 -0
  346. package/node_modules/@noble/hashes/sha3-addons.d.ts +461 -0
  347. package/node_modules/@noble/hashes/sha3-addons.d.ts.map +1 -0
  348. package/node_modules/@noble/hashes/sha3-addons.js +783 -0
  349. package/node_modules/@noble/hashes/sha3-addons.js.map +1 -0
  350. package/node_modules/@noble/hashes/sha3.d.ts +199 -0
  351. package/node_modules/@noble/hashes/sha3.d.ts.map +1 -0
  352. package/node_modules/@noble/hashes/sha3.js +431 -0
  353. package/node_modules/@noble/hashes/sha3.js.map +1 -0
  354. package/node_modules/@noble/hashes/src/_blake.ts +57 -0
  355. package/node_modules/@noble/hashes/src/_md.ts +222 -0
  356. package/node_modules/@noble/hashes/src/_u64.ts +117 -0
  357. package/node_modules/@noble/hashes/src/argon2.ts +667 -0
  358. package/node_modules/@noble/hashes/src/blake1.ts +614 -0
  359. package/node_modules/@noble/hashes/src/blake2.ts +582 -0
  360. package/node_modules/@noble/hashes/src/blake3.ts +317 -0
  361. package/node_modules/@noble/hashes/src/eskdf.ts +259 -0
  362. package/node_modules/@noble/hashes/src/hkdf.ts +133 -0
  363. package/node_modules/@noble/hashes/src/hmac.ts +126 -0
  364. package/node_modules/@noble/hashes/src/index.ts +33 -0
  365. package/node_modules/@noble/hashes/src/legacy.ts +339 -0
  366. package/node_modules/@noble/hashes/src/pbkdf2.ts +175 -0
  367. package/node_modules/@noble/hashes/src/scrypt.ts +315 -0
  368. package/node_modules/@noble/hashes/src/sha2.ts +530 -0
  369. package/node_modules/@noble/hashes/src/sha3-addons.ts +983 -0
  370. package/node_modules/@noble/hashes/src/sha3.ts +485 -0
  371. package/node_modules/@noble/hashes/src/utils.ts +848 -0
  372. package/node_modules/@noble/hashes/src/webcrypto.ts +239 -0
  373. package/node_modules/@noble/hashes/utils.d.ts +519 -0
  374. package/node_modules/@noble/hashes/utils.d.ts.map +1 -0
  375. package/node_modules/@noble/hashes/utils.js +578 -0
  376. package/node_modules/@noble/hashes/utils.js.map +1 -0
  377. package/node_modules/@noble/hashes/webcrypto.d.ts +120 -0
  378. package/node_modules/@noble/hashes/webcrypto.d.ts.map +1 -0
  379. package/node_modules/@noble/hashes/webcrypto.js +165 -0
  380. package/node_modules/@noble/hashes/webcrypto.js.map +1 -0
  381. package/node_modules/ws/LICENSE +20 -0
  382. package/node_modules/ws/README.md +548 -0
  383. package/node_modules/ws/browser.js +8 -0
  384. package/node_modules/ws/index.js +22 -0
  385. package/node_modules/ws/lib/buffer-util.js +131 -0
  386. package/node_modules/ws/lib/constants.js +19 -0
  387. package/node_modules/ws/lib/event-target.js +292 -0
  388. package/node_modules/ws/lib/extension.js +203 -0
  389. package/node_modules/ws/lib/limiter.js +55 -0
  390. package/node_modules/ws/lib/permessage-deflate.js +530 -0
  391. package/node_modules/ws/lib/receiver.js +743 -0
  392. package/node_modules/ws/lib/sender.js +607 -0
  393. package/node_modules/ws/lib/stream.js +161 -0
  394. package/node_modules/ws/lib/subprotocol.js +62 -0
  395. package/node_modules/ws/lib/validation.js +152 -0
  396. package/node_modules/ws/lib/websocket-server.js +562 -0
  397. package/node_modules/ws/lib/websocket.js +1407 -0
  398. package/node_modules/ws/package.json +74 -0
  399. package/node_modules/ws/wrapper.mjs +21 -0
  400. package/package.json +53 -0
@@ -0,0 +1,461 @@
1
+ /**
2
+ * SHA3 (keccak) addons.
3
+ *
4
+ * * cSHAKE, KMAC, TupleHash, ParallelHash + XOF variants from
5
+ * {@link https://csrc.nist.gov/pubs/sp/800/185/final | NIST SP 800-185}
6
+ * * KangarooTwelve 🦘 and TurboSHAKE - reduced-round keccak from
7
+ * {@link https://datatracker.ietf.org/doc/rfc9861/ | RFC 9861}
8
+ * * KeccakPRG: Pseudo-random generator based on Keccak
9
+ * ({@link https://keccak.team/files/CSF-0.1.pdf | pdf})
10
+ * @module
11
+ */
12
+ import { Keccak, type ShakeOpts } from './sha3.ts';
13
+ import { type CHash, type CHashXOF, type Hash, type HashXOF, type KDFInput, type PRG, type TArg, type TRet } from './utils.ts';
14
+ /** Options for cSHAKE and related SP 800-185 functions. */
15
+ export type cShakeOpts = ShakeOpts & {
16
+ /** Optional personalization string mixed into domain separation. */
17
+ personalization?: Uint8Array;
18
+ /**
19
+ * Optional NIST function-name string used for domain separation.
20
+ * SP 800-185 reserves this for standardized function names; applications
21
+ * should generally stick to `personalization`.
22
+ */
23
+ NISTfn?: KDFInput;
24
+ };
25
+ /** TupleHash callable interface. */
26
+ export type ITupleHash = {
27
+ /**
28
+ * Hashes an ordered tuple of byte arrays.
29
+ * @param messages - Ordered byte-array tuple to hash.
30
+ * @param opts - TupleHash output and personalization options. See {@link cShakeOpts}.
31
+ * @returns Digest bytes.
32
+ */
33
+ (messages: TArg<Uint8Array[]>, opts?: TArg<cShakeOpts>): TRet<Uint8Array>;
34
+ /**
35
+ * Creates an incremental TupleHash state.
36
+ * @param opts - TupleHash output and personalization options. See {@link cShakeOpts}.
37
+ * @returns Stateful TupleHash instance.
38
+ */
39
+ create(opts?: cShakeOpts): _TupleHash;
40
+ };
41
+ /**
42
+ * 128-bit NIST cSHAKE XOF.
43
+ * @param msg - message bytes to hash
44
+ * @param opts - Optional output, personalization, and NIST function-name
45
+ * settings. When both `NISTfn` and `personalization` are empty,
46
+ * SP 800-185 defines this as plain SHAKE128. Defaults to 16 output bytes
47
+ * when `dkLen` is omitted. See {@link cShakeOpts}.
48
+ * @returns Digest bytes.
49
+ * @example
50
+ * Hash a message with cSHAKE128.
51
+ * ```ts
52
+ * cshake128(new Uint8Array([1, 2, 3]), { dkLen: 32 });
53
+ * ```
54
+ */
55
+ export declare const cshake128: TRet<CHashXOF<Keccak, cShakeOpts>>;
56
+ /**
57
+ * 256-bit NIST cSHAKE XOF.
58
+ * @param msg - message bytes to hash
59
+ * @param opts - Optional output, personalization, and NIST function-name
60
+ * settings. When both `NISTfn` and `personalization` are empty,
61
+ * SP 800-185 defines this as plain SHAKE256. Defaults to 32 output bytes
62
+ * when `dkLen` is omitted. See {@link cShakeOpts}.
63
+ * @returns Digest bytes.
64
+ * @example
65
+ * Hash a message with cSHAKE256.
66
+ * ```ts
67
+ * cshake256(new Uint8Array([1, 2, 3]), { dkLen: 64 });
68
+ * ```
69
+ */
70
+ export declare const cshake256: TRet<CHashXOF<Keccak, cShakeOpts>>;
71
+ /**
72
+ * Internal KMAC class.
73
+ * SP 800-185 §8.4.1 still recommends keys at least as long as the target
74
+ * security strength.
75
+ */
76
+ export declare class _KMAC extends Keccak implements HashXOF<_KMAC> {
77
+ constructor(blockLen: number, outputLen: number, enableXOF: boolean, key: TArg<Uint8Array>, opts?: TArg<cShakeOpts>);
78
+ protected finish(): void;
79
+ _cloneInto(to?: _KMAC): _KMAC;
80
+ clone(): _KMAC;
81
+ }
82
+ /** KMAC callable interface. */
83
+ export type IKMAC = {
84
+ /**
85
+ * Computes a keyed KMAC digest for one message.
86
+ * @param key - Secret key bytes.
87
+ * @param message - Message bytes to authenticate.
88
+ * @param opts - KMAC output and personalization options. See {@link KangarooOpts}.
89
+ * @returns Authentication tag bytes.
90
+ */
91
+ (key: TArg<Uint8Array>, message: TArg<Uint8Array>, opts?: TArg<KangarooOpts>): TRet<Uint8Array>;
92
+ /**
93
+ * Creates an incremental KMAC state.
94
+ * @param key - Secret key bytes.
95
+ * @param opts - KMAC output and personalization options. See {@link cShakeOpts}.
96
+ * @returns Stateful KMAC instance.
97
+ */
98
+ create(key: TArg<Uint8Array>, opts?: TArg<cShakeOpts>): _KMAC;
99
+ };
100
+ /**
101
+ * 128-bit Keccak MAC.
102
+ * @param key - MAC key bytes
103
+ * @param message - message bytes to authenticate
104
+ * @param opts - Optional output and personalization settings. Defaults to
105
+ * 16 output bytes when `dkLen` is omitted. See {@link cShakeOpts}.
106
+ * @returns Authentication tag bytes.
107
+ * @example
108
+ * Authenticate a message with KMAC128.
109
+ * ```ts
110
+ * kmac128(new Uint8Array([1, 2, 3]), new Uint8Array([4, 5, 6]));
111
+ * ```
112
+ */
113
+ export declare const kmac128: TRet<IKMAC>;
114
+ /**
115
+ * 256-bit Keccak MAC.
116
+ * @param key - MAC key bytes
117
+ * @param message - message bytes to authenticate
118
+ * @param opts - Optional output and personalization settings. Defaults to
119
+ * 32 output bytes when `dkLen` is omitted. See {@link cShakeOpts}.
120
+ * @returns Authentication tag bytes.
121
+ * @example
122
+ * Authenticate a message with KMAC256.
123
+ * ```ts
124
+ * kmac256(new Uint8Array([1, 2, 3]), new Uint8Array([4, 5, 6]));
125
+ * ```
126
+ */
127
+ export declare const kmac256: TRet<IKMAC>;
128
+ /**
129
+ * 128-bit Keccak-MAC XOF.
130
+ * @param key - MAC key bytes
131
+ * @param message - message bytes to authenticate
132
+ * @param opts - Optional output and personalization settings. Defaults to
133
+ * 16 output bytes when `dkLen` is omitted. See {@link cShakeOpts}.
134
+ * @returns Authentication tag bytes.
135
+ * @example
136
+ * Authenticate a message with KMAC128 XOF output.
137
+ * ```ts
138
+ * kmac128xof(new Uint8Array([1, 2, 3]), new Uint8Array([4, 5, 6]), { dkLen: 32 });
139
+ * ```
140
+ */
141
+ export declare const kmac128xof: TRet<IKMAC>;
142
+ /**
143
+ * 256-bit Keccak-MAC XOF.
144
+ * @param key - MAC key bytes
145
+ * @param message - message bytes to authenticate
146
+ * @param opts - Optional output and personalization settings. Defaults to
147
+ * 32 output bytes when `dkLen` is omitted. See {@link cShakeOpts}.
148
+ * @returns Authentication tag bytes.
149
+ * @example
150
+ * Authenticate a message with KMAC256 XOF output.
151
+ * ```ts
152
+ * kmac256xof(new Uint8Array([1, 2, 3]), new Uint8Array([4, 5, 6]), { dkLen: 64 });
153
+ * ```
154
+ */
155
+ export declare const kmac256xof: TRet<IKMAC>;
156
+ /**
157
+ * Internal TupleHash class for byte-array tuple elements.
158
+ * This implementation relies on SP 800-185's byte-oriented encoding form
159
+ * rather than arbitrary bit strings.
160
+ */
161
+ export declare class _TupleHash extends Keccak implements HashXOF<_TupleHash> {
162
+ constructor(blockLen: number, outputLen: number, enableXOF: boolean, opts?: TArg<cShakeOpts>);
163
+ protected finish(): void;
164
+ _cloneInto(to?: _TupleHash): _TupleHash;
165
+ clone(): _TupleHash;
166
+ }
167
+ /**
168
+ * 128-bit TupleHASH. `tuple(['ab', 'cd']) != tuple(['a', 'bcd'])`.
169
+ * @param messages - ordered byte-array tuple
170
+ * @param opts - Optional output and personalization settings. Defaults to
171
+ * 16 output bytes when `dkLen` is omitted. See {@link cShakeOpts}.
172
+ * @returns Digest bytes.
173
+ * @example
174
+ * Hash a tuple of byte arrays with TupleHash128.
175
+ * ```ts
176
+ * tuplehash128([new Uint8Array([1]), new Uint8Array([2])]);
177
+ * ```
178
+ */
179
+ export declare const tuplehash128: TRet<ITupleHash>;
180
+ /**
181
+ * 256-bit TupleHASH. `tuple(['ab', 'cd']) != tuple(['a', 'bcd'])`.
182
+ * @param messages - ordered byte-array tuple
183
+ * @param opts - Optional output and personalization settings. Defaults to
184
+ * 32 output bytes when `dkLen` is omitted. See {@link cShakeOpts}.
185
+ * @returns Digest bytes.
186
+ * @example
187
+ * Hash a tuple of byte arrays with TupleHash256.
188
+ * ```ts
189
+ * tuplehash256([new Uint8Array([1]), new Uint8Array([2])]);
190
+ * ```
191
+ */
192
+ export declare const tuplehash256: TRet<ITupleHash>;
193
+ /**
194
+ * 128-bit TupleHASH XOF.
195
+ * @param messages - ordered byte-array tuple
196
+ * @param opts - Optional output and personalization settings. Defaults to
197
+ * 16 output bytes when `dkLen` is omitted. See {@link cShakeOpts}.
198
+ * @returns Digest bytes.
199
+ * @example
200
+ * Hash a tuple of byte arrays with TupleHash128 XOF output.
201
+ * ```ts
202
+ * tuplehash128xof([new Uint8Array([1]), new Uint8Array([2])], { dkLen: 32 });
203
+ * ```
204
+ */
205
+ export declare const tuplehash128xof: TRet<ITupleHash>;
206
+ /**
207
+ * 256-bit TupleHASH XOF.
208
+ * @param messages - ordered byte-array tuple
209
+ * @param opts - Optional output and personalization settings. Defaults to
210
+ * 32 output bytes when `dkLen` is omitted. See {@link cShakeOpts}.
211
+ * @returns Digest bytes.
212
+ * @example
213
+ * Hash a tuple of byte arrays with TupleHash256 XOF output.
214
+ * ```ts
215
+ * tuplehash256xof([new Uint8Array([1]), new Uint8Array([2])], { dkLen: 64 });
216
+ * ```
217
+ */
218
+ export declare const tuplehash256xof: TRet<ITupleHash>;
219
+ type ParallelOpts = KangarooOpts & {
220
+ blockLen?: number;
221
+ };
222
+ /** Internal Parallel Keccak Hash class. */
223
+ export declare class _ParallelHash extends Keccak implements HashXOF<_ParallelHash> {
224
+ private leafHash?;
225
+ protected leafCons: () => Hash<Keccak>;
226
+ private chunkPos;
227
+ private chunksDone;
228
+ private chunkLen;
229
+ constructor(blockLen: number, outputLen: number, leafCons: () => Hash<Keccak>, enableXOF: boolean, opts?: TArg<ParallelOpts>);
230
+ protected finish(): void;
231
+ _cloneInto(to?: _ParallelHash): _ParallelHash;
232
+ destroy(): void;
233
+ clone(): _ParallelHash;
234
+ }
235
+ /**
236
+ * 128-bit ParallelHash. In JS, it is not parallel.
237
+ * @param msg - message bytes to hash
238
+ * @param opts - Optional output, personalization, and chunking settings.
239
+ * Defaults to 16 output bytes when `dkLen` is omitted.
240
+ * See {@link ParallelOpts}.
241
+ * @returns Digest bytes.
242
+ * @example
243
+ * Hash a message with ParallelHash128.
244
+ * ```ts
245
+ * parallelhash128(new Uint8Array([1, 2, 3]));
246
+ * ```
247
+ */
248
+ export declare const parallelhash128: TRet<CHash<Keccak, ParallelOpts>>;
249
+ /**
250
+ * 256-bit ParallelHash. In JS, it is not parallel.
251
+ * @param msg - message bytes to hash
252
+ * @param opts - Optional output, personalization, and chunking settings.
253
+ * Defaults to 32 output bytes when `dkLen` is omitted.
254
+ * See {@link ParallelOpts}.
255
+ * @returns Digest bytes.
256
+ * @example
257
+ * Hash a message with ParallelHash256.
258
+ * ```ts
259
+ * parallelhash256(new Uint8Array([1, 2, 3]));
260
+ * ```
261
+ */
262
+ export declare const parallelhash256: TRet<CHash<Keccak, ParallelOpts>>;
263
+ /**
264
+ * 128-bit ParallelHash XOF. In JS, it is not parallel.
265
+ * @param msg - message bytes to hash
266
+ * @param opts - Optional output, personalization, and chunking settings.
267
+ * Defaults to 16 output bytes when `dkLen` is omitted.
268
+ * See {@link ParallelOpts}.
269
+ * @returns Digest bytes.
270
+ * @example
271
+ * Hash a message with ParallelHash128 XOF output.
272
+ * ```ts
273
+ * parallelhash128xof(new Uint8Array([1, 2, 3]), { dkLen: 32 });
274
+ * ```
275
+ */
276
+ export declare const parallelhash128xof: TRet<CHashXOF<Keccak, ParallelOpts>>;
277
+ /**
278
+ * 256-bit ParallelHash XOF. In JS, it is not parallel.
279
+ * @param msg - message bytes to hash
280
+ * @param opts - Optional output, personalization, and chunking settings.
281
+ * Defaults to 32 output bytes when `dkLen` is omitted.
282
+ * See {@link ParallelOpts}.
283
+ * @returns Digest bytes.
284
+ * @example
285
+ * Hash a message with ParallelHash256 XOF output.
286
+ * ```ts
287
+ * parallelhash256xof(new Uint8Array([1, 2, 3]), { dkLen: 64 });
288
+ * ```
289
+ */
290
+ export declare const parallelhash256xof: TRet<CHashXOF<Keccak, ParallelOpts>>;
291
+ /**
292
+ * TurboSHAKE options.
293
+ * `D` is the domain separation byte; RFC 9861 defines output length `L`
294
+ * as a positive integer.
295
+ */
296
+ export type TurboshakeOpts = ShakeOpts & {
297
+ /** Optional domain separation byte in the `0x01..0x7f` range. */
298
+ D?: number;
299
+ };
300
+ /**
301
+ * TurboSHAKE 128-bit: reduced 12-round keccak.
302
+ * Should've been a simple "shake with 12 rounds", but we got a whole new
303
+ * spec about Turbo SHAKE Pro MAX.
304
+ * @param msg - message bytes to hash
305
+ * @param opts - Optional output-length and domain-separation settings.
306
+ * RFC 9861 §2.1 defaults `D` to `0x1f`. Defaults to 32 output bytes when
307
+ * `dkLen` is omitted. See {@link TurboshakeOpts}.
308
+ * @returns Digest bytes.
309
+ * @example
310
+ * Hash a message with TurboSHAKE128.
311
+ * ```ts
312
+ * turboshake128(new Uint8Array([1, 2, 3]), { dkLen: 32 });
313
+ * ```
314
+ */
315
+ export declare const turboshake128: TRet<CHashXOF<Keccak, TurboshakeOpts>>;
316
+ /**
317
+ * TurboSHAKE 256-bit: reduced 12-round keccak.
318
+ * @param msg - message bytes to hash
319
+ * @param opts - Optional output-length and domain-separation settings.
320
+ * RFC 9861 §2.1 defaults `D` to `0x1f`. Defaults to 64 output bytes when
321
+ * `dkLen` is omitted. See {@link TurboshakeOpts}.
322
+ * @returns Digest bytes.
323
+ * @example
324
+ * Hash a message with TurboSHAKE256.
325
+ * ```ts
326
+ * turboshake256(new Uint8Array([1, 2, 3]), { dkLen: 64 });
327
+ * ```
328
+ */
329
+ export declare const turboshake256: TRet<CHashXOF<Keccak, TurboshakeOpts>>;
330
+ /** K12 options. */
331
+ export type KangarooOpts = {
332
+ /**
333
+ * Desired digest length in bytes.
334
+ * RFC 9861 §3 defines output length `L` as a positive integer.
335
+ */
336
+ dkLen?: number;
337
+ /**
338
+ * Optional personalization string mixed into the sponge state.
339
+ * Stateful K12 instances keep an internal copy so caller buffers can be
340
+ * wiped independently.
341
+ */
342
+ personalization?: Uint8Array;
343
+ };
344
+ /** Internal K12 hash class. */
345
+ export declare class _KangarooTwelve extends Keccak implements HashXOF<_KangarooTwelve> {
346
+ readonly chunkLen = 8192;
347
+ private leafHash?;
348
+ protected leafLen: number;
349
+ private personalization;
350
+ private chunkPos;
351
+ private chunksDone;
352
+ constructor(blockLen: number, leafLen: number, outputLen: number, rounds: number, opts: TArg<KangarooOpts>);
353
+ update(data: TArg<Uint8Array>): this;
354
+ protected finish(): void;
355
+ destroy(): void;
356
+ _cloneInto(to?: _KangarooTwelve): _KangarooTwelve;
357
+ clone(): _KangarooTwelve;
358
+ }
359
+ /**
360
+ * 128-bit KangarooTwelve (k12): reduced 12-round keccak.
361
+ * @param msg - message bytes to hash
362
+ * @param opts - Optional output and personalization settings. Defaults to
363
+ * 32 output bytes when `dkLen` is omitted. See {@link KangarooOpts}.
364
+ * @returns Digest bytes.
365
+ * @example
366
+ * Hash a message with KangarooTwelve-128.
367
+ * ```ts
368
+ * kt128(new Uint8Array([1, 2, 3]));
369
+ * ```
370
+ */
371
+ export declare const kt128: TRet<CHash<_KangarooTwelve, KangarooOpts>>;
372
+ /**
373
+ * 256-bit KangarooTwelve (k12): reduced 12-round keccak.
374
+ * @param msg - message bytes to hash
375
+ * @param opts - Optional output and personalization settings. Defaults to
376
+ * 64 output bytes when `dkLen` is omitted. See {@link KangarooOpts}.
377
+ * @returns Digest bytes.
378
+ * @example
379
+ * Hash a message with KangarooTwelve-256.
380
+ * ```ts
381
+ * kt256(new Uint8Array([1, 2, 3]));
382
+ * ```
383
+ */
384
+ export declare const kt256: TRet<CHash<_KangarooTwelve, KangarooOpts>>;
385
+ /** KangarooTwelve-based MAC function type. */
386
+ export type HopMAC = (key: TArg<Uint8Array>, message: TArg<Uint8Array>, personalization: TArg<Uint8Array>, dkLen?: number) => TRet<Uint8Array>;
387
+ /**
388
+ * 128-bit KangarooTwelve-based MAC.
389
+ *
390
+ * These untested (there is no test vectors or implementation available). Use at your own risk.
391
+ * HopMAC128(Key, M, C, L) = KT128(Key, KT128(M, C, 32), L)
392
+ * HopMAC256(Key, M, C, L) = KT256(Key, KT256(M, C, 64), L)
393
+ * The inner KangarooTwelve call always uses a fixed 32-byte digest here,
394
+ * regardless of the outer `dkLen`.
395
+ * @param key - MAC key bytes
396
+ * @param message - message bytes to authenticate
397
+ * @param personalization - personalization bytes mixed into the inner hash
398
+ * @param dkLen - optional output length in bytes
399
+ * @returns Authentication tag bytes.
400
+ * @example
401
+ * Authenticate a message with HopMAC128.
402
+ * ```ts
403
+ * HopMAC128(new Uint8Array([1]), new Uint8Array([2]), new Uint8Array([3]), 32);
404
+ * ```
405
+ */
406
+ export declare const HopMAC128: TRet<HopMAC>;
407
+ /**
408
+ * 256-bit KangarooTwelve-based MAC.
409
+ * Like `HopMAC128`, there are no test vectors or known independent
410
+ * implementations available for cross-checking.
411
+ * @param key - MAC key bytes
412
+ * @param message - message bytes to authenticate
413
+ * @param personalization - personalization bytes mixed into the inner hash
414
+ * @param dkLen - optional output length in bytes. The inner KangarooTwelve
415
+ * call still uses a fixed 64-byte digest here, regardless of the outer
416
+ * `dkLen`.
417
+ * @returns Authentication tag bytes.
418
+ * @example
419
+ * Authenticate a message with HopMAC256.
420
+ * ```ts
421
+ * HopMAC256(new Uint8Array([1]), new Uint8Array([2]), new Uint8Array([3]), 64);
422
+ * ```
423
+ */
424
+ export declare const HopMAC256: TRet<HopMAC>;
425
+ /**
426
+ * More at
427
+ * {@link https://github.com/XKCP/XKCP/tree/master/lib/high/Keccak/PRG}.
428
+ * Accepted capacities must keep `rho = 1598 - capacity` byte-aligned, and
429
+ * `.clean()` later also requires `rate > 801`.
430
+ */
431
+ export declare class _KeccakPRG extends Keccak implements PRG {
432
+ protected rate: number;
433
+ constructor(capacity: number);
434
+ protected keccak(): void;
435
+ update(data: TArg<Uint8Array>): this;
436
+ protected finish(): void;
437
+ digestInto(_out: TArg<Uint8Array>): void;
438
+ addEntropy(seed: TArg<Uint8Array>): void;
439
+ randomBytes(length: number): TRet<Uint8Array>;
440
+ clean(): void;
441
+ _cloneInto(to?: _KeccakPRG): _KeccakPRG;
442
+ clone(): _KeccakPRG;
443
+ }
444
+ /**
445
+ * KeccakPRG: pseudo-random generator based on Keccak.
446
+ * See {@link https://keccak.team/files/CSF-0.1.pdf}.
447
+ * @param capacity - sponge capacity in bits. Accepted values are those that
448
+ * keep `rho = 1598 - capacity` byte-aligned; the default `254` is chosen
449
+ * because it satisfies that duplex layout while leaving a wide byte-aligned
450
+ * rate.
451
+ * @returns PRG instance backed by a Keccak sponge.
452
+ * @example
453
+ * Create a Keccak-based pseudorandom generator and read bytes from it.
454
+ * ```ts
455
+ * const prg = keccakprg(254);
456
+ * prg.randomBytes(8);
457
+ * ```
458
+ */
459
+ export declare const keccakprg: (capacity?: number) => TRet<_KeccakPRG>;
460
+ export {};
461
+ //# sourceMappingURL=sha3-addons.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sha3-addons.d.ts","sourceRoot":"","sources":["src/sha3-addons.ts"],"names":[],"mappings":"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"}