@unlink-xyz/core 0.1.3-canary.fd5dddf → 0.1.4

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 (213) hide show
  1. package/README.md +9 -0
  2. package/dist/account/account.d.ts +31 -2
  3. package/dist/account/account.d.ts.map +1 -1
  4. package/dist/account/accounts.d.ts +42 -0
  5. package/dist/account/accounts.d.ts.map +1 -0
  6. package/dist/account/seed.d.ts +45 -0
  7. package/dist/account/seed.d.ts.map +1 -0
  8. package/dist/account/serialization.d.ts +6 -0
  9. package/dist/account/serialization.d.ts.map +1 -0
  10. package/dist/browser/index.js +34424 -86406
  11. package/dist/browser/index.js.map +1 -1
  12. package/dist/browser/wallet/index.js +55942 -0
  13. package/dist/browser/wallet/index.js.map +1 -0
  14. package/dist/clients/broadcaster.d.ts +1 -0
  15. package/dist/clients/broadcaster.d.ts.map +1 -1
  16. package/dist/clients/indexer.d.ts +5 -0
  17. package/dist/clients/indexer.d.ts.map +1 -1
  18. package/dist/config.d.ts +6 -4
  19. package/dist/config.d.ts.map +1 -1
  20. package/dist/core.d.ts.map +1 -1
  21. package/dist/crypto/adapters/index.d.ts +17 -0
  22. package/dist/crypto/adapters/index.d.ts.map +1 -0
  23. package/dist/crypto/adapters/polyfills.d.ts +5 -0
  24. package/dist/crypto/adapters/polyfills.d.ts.map +1 -0
  25. package/dist/crypto/encrypt.d.ts +33 -0
  26. package/dist/crypto/encrypt.d.ts.map +1 -0
  27. package/dist/crypto/secure-memory.d.ts.map +1 -0
  28. package/dist/errors.d.ts +8 -0
  29. package/dist/errors.d.ts.map +1 -1
  30. package/dist/index.d.ts +6 -2
  31. package/dist/index.d.ts.map +1 -1
  32. package/dist/index.js +6721 -23
  33. package/dist/index.js.map +1 -0
  34. package/dist/keys/derive.d.ts +2 -2
  35. package/dist/keys/derive.d.ts.map +1 -1
  36. package/dist/keys/hex.d.ts +1 -4
  37. package/dist/keys/hex.d.ts.map +1 -1
  38. package/dist/keys/mnemonic.d.ts +0 -2
  39. package/dist/keys/mnemonic.d.ts.map +1 -1
  40. package/dist/keys.d.ts +1 -0
  41. package/dist/keys.d.ts.map +1 -1
  42. package/dist/prover/config.d.ts +54 -9
  43. package/dist/prover/config.d.ts.map +1 -1
  44. package/dist/prover/integrity.d.ts +20 -0
  45. package/dist/prover/integrity.d.ts.map +1 -0
  46. package/dist/prover/prover.d.ts +16 -31
  47. package/dist/prover/prover.d.ts.map +1 -1
  48. package/dist/state/merkle/hydrator.d.ts +21 -19
  49. package/dist/state/merkle/hydrator.d.ts.map +1 -1
  50. package/dist/state/merkle/index.d.ts +1 -1
  51. package/dist/state/merkle/index.d.ts.map +1 -1
  52. package/dist/state/store/ciphertext-store.d.ts +7 -0
  53. package/dist/state/store/ciphertext-store.d.ts.map +1 -1
  54. package/dist/state/store/index.d.ts +1 -1
  55. package/dist/state/store/index.d.ts.map +1 -1
  56. package/dist/state/store/job-store.d.ts.map +1 -1
  57. package/dist/state/store/jobs.d.ts +14 -16
  58. package/dist/state/store/jobs.d.ts.map +1 -1
  59. package/dist/state/store/leaf-store.d.ts +4 -0
  60. package/dist/state/store/leaf-store.d.ts.map +1 -1
  61. package/dist/state/store/nullifier-store.d.ts.map +1 -1
  62. package/dist/state/store/records.d.ts +8 -0
  63. package/dist/state/store/records.d.ts.map +1 -1
  64. package/dist/state/store/store.d.ts +18 -0
  65. package/dist/state/store/store.d.ts.map +1 -1
  66. package/dist/storage/indexeddb.d.ts.map +1 -1
  67. package/dist/storage/memory.d.ts.map +1 -1
  68. package/dist/transactions/adapter.d.ts +31 -0
  69. package/dist/transactions/adapter.d.ts.map +1 -0
  70. package/dist/transactions/deposit.d.ts +1 -1
  71. package/dist/transactions/deposit.d.ts.map +1 -1
  72. package/dist/transactions/index.d.ts +4 -2
  73. package/dist/transactions/index.d.ts.map +1 -1
  74. package/dist/transactions/note-sync.d.ts +3 -3
  75. package/dist/transactions/note-sync.d.ts.map +1 -1
  76. package/dist/transactions/reconcile.d.ts +1 -1
  77. package/dist/transactions/reconcile.d.ts.map +1 -1
  78. package/dist/transactions/transact.d.ts +21 -2
  79. package/dist/transactions/transact.d.ts.map +1 -1
  80. package/dist/transactions/transaction-planner.d.ts +1 -1
  81. package/dist/transactions/transaction-planner.d.ts.map +1 -1
  82. package/dist/transactions/transfer-planner.d.ts +2 -1
  83. package/dist/transactions/transfer-planner.d.ts.map +1 -1
  84. package/dist/transactions/types/deposit.d.ts +3 -3
  85. package/dist/transactions/types/deposit.d.ts.map +1 -1
  86. package/dist/transactions/types/domain.d.ts +3 -0
  87. package/dist/transactions/types/domain.d.ts.map +1 -1
  88. package/dist/transactions/types/options.d.ts +14 -5
  89. package/dist/transactions/types/options.d.ts.map +1 -1
  90. package/dist/transactions/types/planning.d.ts +2 -0
  91. package/dist/transactions/types/planning.d.ts.map +1 -1
  92. package/dist/transactions/types/state-stores.d.ts +53 -5
  93. package/dist/transactions/types/state-stores.d.ts.map +1 -1
  94. package/dist/transactions/types/transact.d.ts +10 -3
  95. package/dist/transactions/types/transact.d.ts.map +1 -1
  96. package/dist/transactions/withdrawal-planner.d.ts +1 -1
  97. package/dist/transactions/withdrawal-planner.d.ts.map +1 -1
  98. package/dist/tsconfig.tsbuildinfo +1 -1
  99. package/dist/tsup.config.d.ts +8 -0
  100. package/dist/tsup.config.d.ts.map +1 -0
  101. package/dist/types.d.ts +1 -0
  102. package/dist/types.d.ts.map +1 -1
  103. package/dist/utils/amounts.d.ts +0 -13
  104. package/dist/utils/amounts.d.ts.map +1 -1
  105. package/dist/utils/async.js +37 -34
  106. package/dist/utils/async.js.map +1 -0
  107. package/dist/utils/bigint.d.ts +0 -2
  108. package/dist/utils/bigint.d.ts.map +1 -1
  109. package/dist/utils/random.d.ts +5 -0
  110. package/dist/utils/random.d.ts.map +1 -1
  111. package/dist/utils/validators.d.ts.map +1 -1
  112. package/dist/vitest.config.d.ts.map +1 -1
  113. package/dist/wallet/adapter.d.ts +21 -0
  114. package/dist/wallet/adapter.d.ts.map +1 -0
  115. package/dist/wallet/burner/service.d.ts +32 -0
  116. package/dist/wallet/burner/service.d.ts.map +1 -0
  117. package/dist/wallet/burner/types.d.ts +47 -0
  118. package/dist/wallet/burner/types.d.ts.map +1 -0
  119. package/dist/wallet/index.d.ts +20 -0
  120. package/dist/wallet/index.d.ts.map +1 -0
  121. package/dist/wallet/index.js +6462 -0
  122. package/dist/wallet/index.js.map +1 -0
  123. package/dist/wallet/sdk.d.ts +48 -0
  124. package/dist/wallet/sdk.d.ts.map +1 -0
  125. package/dist/wallet/types.d.ts +457 -0
  126. package/dist/wallet/types.d.ts.map +1 -0
  127. package/dist/wallet/unlink-wallet.d.ts +187 -0
  128. package/dist/wallet/unlink-wallet.d.ts.map +1 -0
  129. package/package.json +16 -6
  130. package/dist/account/account.js +0 -142
  131. package/dist/circuits.json +0 -74
  132. package/dist/clients/broadcaster.js +0 -30
  133. package/dist/clients/http.js +0 -72
  134. package/dist/clients/indexer.js +0 -94
  135. package/dist/config.js +0 -36
  136. package/dist/constants.js +0 -5
  137. package/dist/core.js +0 -15
  138. package/dist/crypto-adapters/auto-init.d.ts +0 -2
  139. package/dist/crypto-adapters/auto-init.d.ts.map +0 -1
  140. package/dist/crypto-adapters/auto-init.js +0 -7
  141. package/dist/crypto-adapters/index.d.ts +0 -22
  142. package/dist/crypto-adapters/index.d.ts.map +0 -1
  143. package/dist/crypto-adapters/index.js +0 -47
  144. package/dist/crypto-adapters/polyfills.d.ts +0 -5
  145. package/dist/crypto-adapters/polyfills.d.ts.map +0 -1
  146. package/dist/crypto-adapters/polyfills.js +0 -8
  147. package/dist/errors.js +0 -36
  148. package/dist/history/index.js +0 -2
  149. package/dist/history/service.js +0 -354
  150. package/dist/history/types.js +0 -1
  151. package/dist/keys/address.js +0 -55
  152. package/dist/keys/derive.js +0 -112
  153. package/dist/keys/hex.js +0 -66
  154. package/dist/keys/index.js +0 -4
  155. package/dist/keys/mnemonic.js +0 -23
  156. package/dist/keys.js +0 -45
  157. package/dist/prover/config.js +0 -70
  158. package/dist/prover/index.js +0 -1
  159. package/dist/prover/prover.js +0 -291
  160. package/dist/prover/registry.js +0 -18
  161. package/dist/schema.js +0 -14
  162. package/dist/state/index.js +0 -2
  163. package/dist/state/merkle/hydrator.js +0 -37
  164. package/dist/state/merkle/index.js +0 -2
  165. package/dist/state/merkle/merkle-tree.js +0 -113
  166. package/dist/state/store/ciphertext-store.js +0 -37
  167. package/dist/state/store/history-store.js +0 -53
  168. package/dist/state/store/index.js +0 -9
  169. package/dist/state/store/job-store.js +0 -144
  170. package/dist/state/store/jobs.js +0 -1
  171. package/dist/state/store/leaf-store.js +0 -32
  172. package/dist/state/store/note-store.js +0 -146
  173. package/dist/state/store/nullifier-store.js +0 -60
  174. package/dist/state/store/records.js +0 -1
  175. package/dist/state/store/root-store.js +0 -26
  176. package/dist/state/store/store.js +0 -113
  177. package/dist/storage/index.js +0 -2
  178. package/dist/storage/indexeddb.js +0 -205
  179. package/dist/storage/memory.js +0 -91
  180. package/dist/transactions/deposit.js +0 -220
  181. package/dist/transactions/index.js +0 -9
  182. package/dist/transactions/note-selection.js +0 -201
  183. package/dist/transactions/note-sync.js +0 -485
  184. package/dist/transactions/reconcile.js +0 -85
  185. package/dist/transactions/transact.js +0 -450
  186. package/dist/transactions/transaction-planner.js +0 -116
  187. package/dist/transactions/transfer-planner.js +0 -85
  188. package/dist/transactions/types/deposit.js +0 -1
  189. package/dist/transactions/types/domain.js +0 -4
  190. package/dist/transactions/types/index.js +0 -17
  191. package/dist/transactions/types/options.js +0 -1
  192. package/dist/transactions/types/planning.js +0 -1
  193. package/dist/transactions/types/state-stores.js +0 -1
  194. package/dist/transactions/types/transact.js +0 -1
  195. package/dist/transactions/withdrawal-planner.js +0 -128
  196. package/dist/tsup.browser.config.js +0 -34
  197. package/dist/types.js +0 -1
  198. package/dist/utils/amounts.js +0 -89
  199. package/dist/utils/bigint.js +0 -29
  200. package/dist/utils/crypto.d.ts +0 -18
  201. package/dist/utils/crypto.d.ts.map +0 -1
  202. package/dist/utils/crypto.js +0 -45
  203. package/dist/utils/format.js +0 -33
  204. package/dist/utils/json-codec.js +0 -25
  205. package/dist/utils/notes.js +0 -14
  206. package/dist/utils/polling.js +0 -11
  207. package/dist/utils/random.js +0 -27
  208. package/dist/utils/secure-memory.d.ts.map +0 -1
  209. package/dist/utils/secure-memory.js +0 -28
  210. package/dist/utils/signature.js +0 -14
  211. package/dist/utils/validators.js +0 -96
  212. package/dist/vitest.config.js +0 -13
  213. /package/dist/{utils → crypto}/secure-memory.d.ts +0 -0
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Node.js build configuration.
3
+ * Bundles problematic CJS dependencies (@zk-kit/*, blakejs, poseidon-lite)
4
+ * so npm consumers don't hit CJS/ESM interop issues on Node.js v22+.
5
+ */
6
+ declare const _default: import("tsup").Options | import("tsup").Options[] | ((overrideOptions: import("tsup").Options) => import("tsup").Options | import("tsup").Options[] | Promise<import("tsup").Options | import("tsup").Options[]>);
7
+ export default _default;
8
+ //# sourceMappingURL=tsup.config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tsup.config.d.ts","sourceRoot":"","sources":["../tsup.config.ts"],"names":[],"mappings":"AAEA;;;;GAIG;;AACH,wBA2BG"}
package/dist/types.d.ts CHANGED
@@ -21,6 +21,7 @@ export type Storage = {
21
21
  put(key: string, value: Bytes): Promise<void>;
22
22
  batch(ops: BatchOp[]): Promise<void>;
23
23
  iter(opts: IterOptions): Promise<KvPair[]>;
24
+ count(prefix?: string): Promise<number>;
24
25
  getSchemaVersion(): Promise<number>;
25
26
  setSchemaVersion(v: number): Promise<void>;
26
27
  };
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,KAAK,GAAG,UAAU,CAAC;AAE/B,MAAM,MAAM,WAAW,GAAG;IACxB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,MAAM,GAAG;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,KAAK,CAAA;CAAE,CAAC;AAEnD,MAAM,MAAM,OAAO,GAAG;IAAE,GAAG,CAAC,EAAE,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAE9D,MAAM,MAAM,OAAO,GAAG;IACpB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACtB,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC;IACxC,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACnC,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC9C,KAAK,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACrC,IAAI,CAAC,IAAI,EAAE,WAAW,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IAC3C,gBAAgB,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IACpC,gBAAgB,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC5C,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,KAAK,GAAG,UAAU,CAAC;AAE/B,MAAM,MAAM,WAAW,GAAG;IACxB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,MAAM,GAAG;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,KAAK,CAAA;CAAE,CAAC;AAEnD,MAAM,MAAM,OAAO,GAAG;IAAE,GAAG,CAAC,EAAE,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAE9D,MAAM,MAAM,OAAO,GAAG;IACpB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACtB,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC;IACxC,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACnC,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC9C,KAAK,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACrC,IAAI,CAAC,IAAI,EAAE,WAAW,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IAC3C,KAAK,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IACxC,gBAAgB,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IACpC,gBAAgB,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC5C,CAAC"}
@@ -23,17 +23,4 @@ export declare function parseAmount(value: string, decimals: number): bigint;
23
23
  * formatAmount(1000n, 6) // Returns "0.001"
24
24
  */
25
25
  export declare function formatAmount(amount: bigint, decimals: number): string;
26
- /**
27
- * Split a total amount into N equal parts, distributing remainder evenly.
28
- *
29
- * @param total - Total amount to split
30
- * @param parts - Number of parts to split into
31
- * @returns Array of amounts that sum to total
32
- * @throws ValidationError if parts is invalid or amount is too small to split
33
- *
34
- * @example
35
- * splitAmount(100n, 3) // Returns [34n, 33n, 33n] (remainder goes to first outputs)
36
- * splitAmount(10n, 2) // Returns [5n, 5n]
37
- */
38
- export declare function splitAmount(total: bigint, parts: number): bigint[];
39
26
  //# sourceMappingURL=amounts.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"amounts.d.ts","sourceRoot":"","sources":["../../utils/amounts.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;GAWG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CA8BnE;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAcrE;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,CAgClE"}
1
+ {"version":3,"file":"amounts.d.ts","sourceRoot":"","sources":["../../utils/amounts.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;GAWG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CA8BnE;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAcrE"}
@@ -1,37 +1,40 @@
1
- import { HttpError } from "../clients/http.js";
2
- /**
3
- * Promise-based delay utility.
4
- */
5
- export function sleep(ms) {
6
- return new Promise((resolve) => setTimeout(resolve, ms));
1
+ // clients/http.ts
2
+ import ky, { TimeoutError } from "ky";
3
+ var HttpError = class extends Error {
4
+ status;
5
+ body;
6
+ constructor(message, status, body) {
7
+ super(message);
8
+ this.status = status;
9
+ this.body = body;
10
+ }
11
+ };
12
+
13
+ // utils/async.ts
14
+ function sleep(ms) {
15
+ return new Promise((resolve) => setTimeout(resolve, ms));
7
16
  }
8
- /**
9
- * Type guard for HTTP 404 errors.
10
- */
11
- export function isNotFoundError(err) {
12
- return err instanceof HttpError && err.status === 404;
17
+ function isNotFoundError(err) {
18
+ return err instanceof HttpError && err.status === 404;
13
19
  }
14
- /**
15
- * Race a promise against a timeout, rejecting if the timeout fires first.
16
- * Properly cleans up the timeout to avoid memory leaks.
17
- *
18
- * @param promise - The promise to race against the timeout
19
- * @param ms - Timeout in milliseconds
20
- * @param error - Error to throw on timeout (string message or Error instance)
21
- */
22
- export async function withTimeout(promise, ms, error) {
23
- let timeoutId;
24
- return Promise.race([
25
- promise,
26
- new Promise((_, reject) => {
27
- timeoutId = setTimeout(() => {
28
- reject(error instanceof Error
29
- ? error
30
- : new Error(error ?? `Operation timed out after ${ms}ms`));
31
- }, ms);
32
- }),
33
- ]).finally(() => {
34
- if (timeoutId !== undefined)
35
- clearTimeout(timeoutId);
36
- });
20
+ async function withTimeout(promise, ms, error) {
21
+ let timeoutId;
22
+ return Promise.race([
23
+ promise,
24
+ new Promise((_, reject) => {
25
+ timeoutId = setTimeout(() => {
26
+ reject(
27
+ error instanceof Error ? error : new Error(error ?? `Operation timed out after ${ms}ms`)
28
+ );
29
+ }, ms);
30
+ })
31
+ ]).finally(() => {
32
+ if (timeoutId !== void 0) clearTimeout(timeoutId);
33
+ });
37
34
  }
35
+ export {
36
+ isNotFoundError,
37
+ sleep,
38
+ withTimeout
39
+ };
40
+ //# sourceMappingURL=async.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../clients/http.ts","../../utils/async.ts"],"sourcesContent":["import ky, { TimeoutError } from \"ky\";\n\nimport { InitializationError } from \"../errors.js\";\n\nexport type FetchLike = (\n input: RequestInfo | URL,\n init?: RequestInit,\n) => Promise<Response>;\n\n/**\n * Resolve fetch implementation from options or global.\n * @param providedFetch - Optional fetch implementation\n * @returns Fetch function or undefined if not available\n */\nexport function resolveFetch(\n providedFetch?: FetchLike,\n): typeof fetch | undefined {\n return providedFetch ?? (typeof fetch === \"function\" ? fetch : undefined);\n}\n\nexport type JsonHttpDeps = { fetch: FetchLike };\n\nexport type JsonRequestOptions = {\n method: \"GET\" | \"POST\" | \"PUT\" | \"PATCH\" | \"DELETE\";\n path: string;\n query?: Record<string, string | number | boolean | undefined>;\n json?: unknown;\n body?: BodyInit;\n headers?: HeadersInit;\n signal?: AbortSignal;\n};\n\nexport type JsonHttpClient = {\n request<T>(opts: JsonRequestOptions): Promise<T>;\n};\n\nexport class HttpError extends Error {\n readonly status: number;\n readonly body: unknown;\n\n constructor(message: string, status: number, body: unknown) {\n super(message);\n this.status = status;\n this.body = body;\n }\n}\n\nasync function readErrorBodySafe(res: Response) {\n try {\n return await res.clone().json();\n } catch {\n const text = await res.text();\n return text || null;\n }\n}\n\nexport function createJsonHttpClient(\n baseUrl: string,\n deps: JsonHttpDeps,\n): JsonHttpClient {\n if (!baseUrl) throw new InitializationError(\"baseUrl is required\");\n if (!deps?.fetch) throw new InitializationError(\"deps.fetch is required\");\n\n // Ensure `fetch` is invoked with a global `this` to avoid \"Illegal invocation\"\n // errors in some browser environments when the function is extracted. // TODO: can we fix this in another way?\n const fetchImpl: FetchLike = (...args) => deps.fetch.apply(globalThis, args);\n\n const api = ky.create({\n prefixUrl: baseUrl.replace(/\\/+$/, \"\"),\n fetch: fetchImpl,\n // Disable ky's automatic error throwing to prevent browser DevTools\n // from logging expected 404s as network errors\n throwHttpErrors: false,\n });\n\n return {\n async request<T>(opts: JsonRequestOptions): Promise<T> {\n let res: Response;\n try {\n res = await api(opts.path.replace(/^\\//, \"\"), {\n method: opts.method,\n searchParams: opts.query,\n json: opts.json,\n body: opts.body,\n headers: opts.headers,\n signal: opts.signal,\n });\n } catch (err) {\n // Only network-level errors reach here (timeout, connection refused, etc.)\n if (err instanceof TimeoutError) {\n throw new HttpError(\"HTTP timeout\", 408, null);\n }\n throw new HttpError(\n err instanceof Error ? err.message : \"Network error\",\n 0,\n null,\n );\n }\n\n // HTTP status errors handled outside try-catch - no redundant catch/rethrow\n if (!res.ok) {\n const body = await readErrorBodySafe(res);\n throw new HttpError(\n `HTTP ${res.status} ${res.statusText}`.trim(),\n res.status,\n body,\n );\n }\n\n return (await res.json()) as T;\n },\n };\n}\n","import { HttpError } from \"../clients/http.js\";\n\n/**\n * Promise-based delay utility.\n */\nexport function sleep(ms: number): Promise<void> {\n return new Promise((resolve) => setTimeout(resolve, ms));\n}\n\n/**\n * Type guard for HTTP 404 errors.\n */\nexport function isNotFoundError(err: unknown): err is HttpError {\n return err instanceof HttpError && err.status === 404;\n}\n\n/**\n * Race a promise against a timeout, rejecting if the timeout fires first.\n * Properly cleans up the timeout to avoid memory leaks.\n *\n * @param promise - The promise to race against the timeout\n * @param ms - Timeout in milliseconds\n * @param error - Error to throw on timeout (string message or Error instance)\n */\nexport async function withTimeout<T>(\n promise: Promise<T>,\n ms: number,\n error?: string | Error,\n): Promise<T> {\n let timeoutId: ReturnType<typeof setTimeout> | undefined;\n return Promise.race([\n promise,\n new Promise<never>((_, reject) => {\n timeoutId = setTimeout(() => {\n reject(\n error instanceof Error\n ? error\n : new Error(error ?? `Operation timed out after ${ms}ms`),\n );\n }, ms);\n }),\n ]).finally(() => {\n if (timeoutId !== undefined) clearTimeout(timeoutId);\n });\n}\n"],"mappings":";AAAA,OAAO,MAAM,oBAAoB;AAoC1B,IAAM,YAAN,cAAwB,MAAM;AAAA,EAC1B;AAAA,EACA;AAAA,EAET,YAAY,SAAiB,QAAgB,MAAe;AAC1D,UAAM,OAAO;AACb,SAAK,SAAS;AACd,SAAK,OAAO;AAAA,EACd;AACF;;;ACxCO,SAAS,MAAM,IAA2B;AAC/C,SAAO,IAAI,QAAQ,CAAC,YAAY,WAAW,SAAS,EAAE,CAAC;AACzD;AAKO,SAAS,gBAAgB,KAAgC;AAC9D,SAAO,eAAe,aAAa,IAAI,WAAW;AACpD;AAUA,eAAsB,YACpB,SACA,IACA,OACY;AACZ,MAAI;AACJ,SAAO,QAAQ,KAAK;AAAA,IAClB;AAAA,IACA,IAAI,QAAe,CAAC,GAAG,WAAW;AAChC,kBAAY,WAAW,MAAM;AAC3B;AAAA,UACE,iBAAiB,QACb,QACA,IAAI,MAAM,SAAS,6BAA6B,EAAE,IAAI;AAAA,QAC5D;AAAA,MACF,GAAG,EAAE;AAAA,IACP,CAAC;AAAA,EACH,CAAC,EAAE,QAAQ,MAAM;AACf,QAAI,cAAc,OAAW,cAAa,SAAS;AAAA,EACrD,CAAC;AACH;","names":[]}
@@ -3,7 +3,5 @@
3
3
  */
4
4
  export declare function formatUint256(value: bigint): string;
5
5
  export declare function parseHexToBigInt(value: string): bigint;
6
- export declare function parseNumToBigInt(value: string | undefined): bigint;
7
6
  export declare function assertNonNegative(label: string, value: bigint): void;
8
- export declare function ensureBigint(label: string, value: unknown): bigint;
9
7
  //# sourceMappingURL=bigint.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"bigint.d.ts","sourceRoot":"","sources":["../../utils/bigint.ts"],"names":[],"mappings":"AAGA;;GAEG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAGnD;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAEtD;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAKlE;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAIpE;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,MAAM,CAKlE"}
1
+ {"version":3,"file":"bigint.d.ts","sourceRoot":"","sources":["../../utils/bigint.ts"],"names":[],"mappings":"AAGA;;GAEG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAGnD;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAEtD;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAIpE"}
@@ -10,4 +10,9 @@ export declare function randomBigint(bytes?: number): bigint;
10
10
  * @returns Random hex string with 0x prefix
11
11
  */
12
12
  export declare function randomHex(bytes: number): `0x${string}`;
13
+ /**
14
+ * Generate a unique relay ID for transaction tracking.
15
+ * Uses crypto.randomUUID() when available, falls back to 128-bit random hex.
16
+ */
17
+ export declare function generateRelayId(prefix: string): string;
13
18
  //# sourceMappingURL=random.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"random.d.ts","sourceRoot":"","sources":["../../utils/random.ts"],"names":[],"mappings":"AAEA;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,KAAK,SAAK,GAAG,MAAM,CAY/C;AAED;;;;GAIG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,KAAK,MAAM,EAAE,CAItD"}
1
+ {"version":3,"file":"random.d.ts","sourceRoot":"","sources":["../../utils/random.ts"],"names":[],"mappings":"AAEA;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,KAAK,SAAK,GAAG,MAAM,CAY/C;AAED;;;;GAIG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,KAAK,MAAM,EAAE,CAItD;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAItD"}
@@ -1 +1 @@
1
- {"version":3,"file":"validators.d.ts","sourceRoot":"","sources":["../../utils/validators.ts"],"names":[],"mappings":"AACA,OAAO,EAAiB,KAAK,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAC/D,OAAO,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAC;AAGrE,eAAO,MAAM,kBAAkB,iFAC0E,CAAC;AAE1G,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,QAI7D;AAED,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,QAI5C;AAED,6DAA6D;AAC7D,wBAAgB,SAAS,CAAC,GAAG,EAAE,MAAM,QAIpC;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,QAU9D;AAID,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,KAAK,MAAM,EAAE,CAOzE;AAED,mEAAmE;AACnE,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,QAS9D;AAED,sEAAsE;AACtE,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,MAAM,EACb,UAAU,EAAE,mBAAmB,GAAG,SAAS,mCAc5C;AAED,wEAAwE;AACxE,wBAAgB,yBAAyB,CACvC,KAAK,EAAE,MAAM,EACb,IAAI,EAAE;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE;SAAvC,MAAM;YAAU,MAAM;WAAS,MAAM;EAWnD;AAED;;;GAGG;AACH,MAAM,MAAM,eAAe,GAAG;IAC5B,eAAe,EAAE,MAAM,CAAC;IACxB,gBAAgB,EAAE,UAAU,CAAC;IAC7B,KAAK,CAAC,EAAE,KAAK,CAAC;CACf,CAAC;AAEF;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,eAAe,CAe7D"}
1
+ {"version":3,"file":"validators.d.ts","sourceRoot":"","sources":["../../utils/validators.ts"],"names":[],"mappings":"AACA,OAAO,EAAiB,KAAK,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAC/D,OAAO,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAC;AAGrE,eAAO,MAAM,kBAAkB,iFAC0E,CAAC;AAE1G,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,QAI7D;AAED,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,QAI5C;AAED,6DAA6D;AAC7D,wBAAgB,SAAS,CAAC,GAAG,EAAE,MAAM,QAIpC;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,QAU9D;AAID,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,KAAK,MAAM,EAAE,CAOzE;AAED,mEAAmE;AACnE,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,QAS9D;AAED,sEAAsE;AACtE,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,MAAM,EACb,UAAU,EAAE,mBAAmB,GAAG,SAAS,mCAW5C;AAED,wEAAwE;AACxE,wBAAgB,yBAAyB,CACvC,KAAK,EAAE,MAAM,EACb,IAAI,EAAE;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE;SAAvC,MAAM;YAAU,MAAM;WAAS,MAAM;EAWnD;AAED;;;GAGG;AACH,MAAM,MAAM,eAAe,GAAG;IAC5B,eAAe,EAAE,MAAM,CAAC;IACxB,gBAAgB,EAAE,UAAU,CAAC;IAC7B,KAAK,CAAC,EAAE,KAAK,CAAC;CACf,CAAC;AAEF;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,eAAe,CAe7D"}
@@ -1 +1 @@
1
- {"version":3,"file":"vitest.config.d.ts","sourceRoot":"","sources":["../vitest.config.ts"],"names":[],"mappings":";AAEA,wBAWG"}
1
+ {"version":3,"file":"vitest.config.d.ts","sourceRoot":"","sources":["../vitest.config.ts"],"names":[],"mappings":";AAEA,wBAKG"}
@@ -0,0 +1,21 @@
1
+ import type { Account, AccountView, Signer } from "../account/account.js";
2
+ import type { createBroadcasterClient } from "../clients/broadcaster.js";
3
+ import { transact } from "../transactions/transact.js";
4
+ import type { ServiceOptions, TransactStateStore } from "../transactions/types/index.js";
5
+ import { planWithdrawals } from "../transactions/withdrawal-planner.js";
6
+ import type { WalletAdapterAPI } from "./types.js";
7
+ type BroadcasterClient = Pick<ReturnType<typeof createBroadcasterClient>, "submitRelay">;
8
+ export type AdapterServiceDeps = {
9
+ stateStore: TransactStateStore;
10
+ txOpts: ServiceOptions;
11
+ broadcasterClient: BroadcasterClient;
12
+ requireActiveAccount: () => Promise<Account>;
13
+ requireSigner: (account: AccountView) => Signer;
14
+ planWithdrawalsFn?: typeof planWithdrawals;
15
+ transactFn?: typeof transact;
16
+ randomBigintFn?: () => bigint;
17
+ nowFn?: () => number;
18
+ };
19
+ export declare function createAdapterService(deps: AdapterServiceDeps): WalletAdapterAPI;
20
+ export {};
21
+ //# sourceMappingURL=adapter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../wallet/adapter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAE1E,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AAKzE,OAAO,EAEL,QAAQ,EAGT,MAAM,6BAA6B,CAAC;AACrC,OAAO,KAAK,EACV,cAAc,EAEd,kBAAkB,EACnB,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAC;AAOxE,OAAO,KAAK,EAKV,gBAAgB,EAEjB,MAAM,YAAY,CAAC;AAKpB,KAAK,iBAAiB,GAAG,IAAI,CAC3B,UAAU,CAAC,OAAO,uBAAuB,CAAC,EAC1C,aAAa,CACd,CAAC;AAOF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,UAAU,EAAE,kBAAkB,CAAC;IAC/B,MAAM,EAAE,cAAc,CAAC;IACvB,iBAAiB,EAAE,iBAAiB,CAAC;IACrC,oBAAoB,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,CAAC;IAC7C,aAAa,EAAE,CAAC,OAAO,EAAE,WAAW,KAAK,MAAM,CAAC;IAChD,iBAAiB,CAAC,EAAE,OAAO,eAAe,CAAC;IAC3C,UAAU,CAAC,EAAE,OAAO,QAAQ,CAAC;IAC7B,cAAc,CAAC,EAAE,MAAM,MAAM,CAAC;IAC9B,KAAK,CAAC,EAAE,MAAM,MAAM,CAAC;CACtB,CAAC;AAmEF,wBAAgB,oBAAoB,CAClC,IAAI,EAAE,kBAAkB,GACvB,gBAAgB,CAuMlB"}
@@ -0,0 +1,32 @@
1
+ import type { WithdrawResult } from "../types.js";
2
+ import type { BurnerAPI } from "./types.js";
3
+ export type BurnerServiceDeps = {
4
+ chainRpcUrl: string;
5
+ getMasterSeed: () => Promise<Uint8Array>;
6
+ /** Withdraw from shielded pool to fund a burner address */
7
+ withdrawToAddress: (params: {
8
+ chainId: number;
9
+ poolAddress: string;
10
+ withdrawals: Array<{
11
+ token: string;
12
+ amount: bigint;
13
+ recipient: string;
14
+ }>;
15
+ }) => Promise<WithdrawResult>;
16
+ /** Build a deposit calldata to sweep tokens back into the pool */
17
+ requestDeposit: (params: {
18
+ chainId: number;
19
+ poolAddress: string;
20
+ depositor: string;
21
+ deposits: Array<{
22
+ token: string;
23
+ amount: bigint;
24
+ }>;
25
+ }) => Promise<{
26
+ to: string;
27
+ calldata: string;
28
+ }>;
29
+ };
30
+ export type BurnerService = BurnerAPI;
31
+ export declare function createBurnerService(deps: BurnerServiceDeps): BurnerService;
32
+ //# sourceMappingURL=service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../../../wallet/burner/service.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAClD,OAAO,KAAK,EAEV,SAAS,EAIV,MAAM,YAAY,CAAC;AAKpB,MAAM,MAAM,iBAAiB,GAAG;IAC9B,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,OAAO,CAAC,UAAU,CAAC,CAAC;IACzC,2DAA2D;IAC3D,iBAAiB,EAAE,CAAC,MAAM,EAAE;QAC1B,OAAO,EAAE,MAAM,CAAC;QAChB,WAAW,EAAE,MAAM,CAAC;QACpB,WAAW,EAAE,KAAK,CAAC;YAAE,KAAK,EAAE,MAAM,CAAC;YAAC,MAAM,EAAE,MAAM,CAAC;YAAC,SAAS,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;KAC1E,KAAK,OAAO,CAAC,cAAc,CAAC,CAAC;IAC9B,kEAAkE;IAClE,cAAc,EAAE,CAAC,MAAM,EAAE;QACvB,OAAO,EAAE,MAAM,CAAC;QAChB,WAAW,EAAE,MAAM,CAAC;QACpB,SAAS,EAAE,MAAM,CAAC;QAClB,QAAQ,EAAE,KAAK,CAAC;YAAE,KAAK,EAAE,MAAM,CAAC;YAAC,MAAM,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;KACpD,KAAK,OAAO,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CACjD,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG,SAAS,CAAC;AAKtC,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,iBAAiB,GAAG,aAAa,CAqJ1E"}
@@ -0,0 +1,47 @@
1
+ import type { WithdrawResult } from "../types.js";
2
+ export type BurnerAccount = {
3
+ /** Ethereum address of the burner EOA */
4
+ address: string;
5
+ /** BIP-44 derivation index (m/44'/60'/0'/0/{index}) */
6
+ index: number;
7
+ };
8
+ export type BurnerSendParams = {
9
+ to: string;
10
+ data?: string;
11
+ value?: bigint;
12
+ gasLimit?: bigint;
13
+ };
14
+ export type BurnerFundParams = {
15
+ chainId: number;
16
+ poolAddress: string;
17
+ token: string;
18
+ amount: bigint;
19
+ };
20
+ export type BurnerSweepToPoolParams = {
21
+ chainId: number;
22
+ poolAddress: string;
23
+ token: string;
24
+ /** Amount to sweep; omit to sweep full token balance */
25
+ amount?: bigint;
26
+ };
27
+ export type BurnerAPI = {
28
+ /** Derive burner address for a given index */
29
+ addressOf(index: number): Promise<BurnerAccount>;
30
+ /** Send a transaction from burner at index */
31
+ send(index: number, tx: BurnerSendParams): Promise<{
32
+ txHash: string;
33
+ }>;
34
+ /** Export the raw private key (0x-prefixed hex) for wallet import */
35
+ exportKey(index: number): Promise<string>;
36
+ /** Withdraw from shielded pool to fund this burner */
37
+ fund(index: number, params: BurnerFundParams): Promise<WithdrawResult>;
38
+ /** Approve + deposit tokens from burner back into shielded pool */
39
+ sweepToPool(index: number, params: BurnerSweepToPoolParams): Promise<{
40
+ txHash: string;
41
+ }>;
42
+ /** Get ERC-20 token balance of any address */
43
+ getTokenBalance(address: string, token: string): Promise<bigint>;
44
+ /** Get native ETH balance of any address */
45
+ getBalance(address: string): Promise<bigint>;
46
+ };
47
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../wallet/burner/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAElD,MAAM,MAAM,aAAa,GAAG;IAC1B,yCAAyC;IACzC,OAAO,EAAE,MAAM,CAAC;IAChB,uDAAuD;IACvD,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAAG;IACpC,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,wDAAwD;IACxD,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,SAAS,GAAG;IACtB,8CAA8C;IAC9C,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;IACjD,8CAA8C;IAC9C,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE,gBAAgB,GAAG,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACvE,qEAAqE;IACrE,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAC1C,sDAAsD;IACtD,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,gBAAgB,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;IACvE,mEAAmE;IACnE,WAAW,CACT,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,uBAAuB,GAC9B,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC/B,8CAA8C;IAC9C,eAAe,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IACjE,4CAA4C;IAC5C,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;CAC9C,CAAC"}
@@ -0,0 +1,20 @@
1
+ export { UnlinkWallet } from "./unlink-wallet.js";
2
+ export { createBrowserWalletSDK, createWalletSDK, type BrowserWalletOptions, type BrowserWalletResult, } from "./sdk.js";
3
+ export type { AccountInfo, BurnerAccount, BurnerAPI, BurnerFundParams, BurnerSendParams, BurnerSweepToPoolParams, CoreSDK, ProverConfig, AdapterExecuteResult, InputTokenSpec, ReshieldInput, SimpleDepositParams, SimpleTransferParams, SimpleWithdrawParams, SimpleAdapterExecuteParams, SimpleBurnerFundParams, SimpleBurnerSweepToPoolParams, SimpleTransactParams, TransferParams, TransferPlanResult, TransferResult, TxStatusChangedEvent, UnlinkWalletConfig, WalletAccountAPI, WalletDepositAPI, WalletDepositParams, WalletDepositResult, WalletAdapterAPI, WalletAdapterExecuteParams, WalletTxAPI, SeedAPI, WalletBalanceAPI, WalletDeps, WalletSDK, WalletSDKEvent, WalletTransferAPI, WalletWithdrawAPI, SignerOverride, WithdrawParams, WithdrawPlanResult, WithdrawResult, } from "./types.js";
4
+ export type { Account } from "../account/account.js";
5
+ export type { CommitmentRecord } from "../clients/indexer.js";
6
+ export type { DepositRelayResult } from "../transactions/types/index.js";
7
+ export type { HistoryEntry } from "../history/types.js";
8
+ export type { Chain } from "../keys/address.js";
9
+ export type { ParsedZkAddress } from "../utils/validators.js";
10
+ export type { NoteRecord } from "../state/store/records.js";
11
+ export type { RelayState } from "../clients/broadcaster.js";
12
+ export { computeBalances } from "../utils/notes.js";
13
+ export { parseZkAddress } from "../utils/validators.js";
14
+ export { decodeAddress, encodeAddress } from "../keys/address.js";
15
+ export { formatAmount, parseAmount } from "../utils/amounts.js";
16
+ export { randomHex } from "../utils/random.js";
17
+ export { normalizeAddress, shortenHex } from "../utils/format.js";
18
+ export { AdapterError, CoreError, InitializationError, ProofError, ValidationError, } from "../errors.js";
19
+ export { HttpError } from "../clients/http.js";
20
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../wallet/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EACL,sBAAsB,EACtB,eAAe,EACf,KAAK,oBAAoB,EACzB,KAAK,mBAAmB,GACzB,MAAM,UAAU,CAAC;AAClB,YAAY,EACV,WAAW,EACX,aAAa,EACb,SAAS,EACT,gBAAgB,EAChB,gBAAgB,EAChB,uBAAuB,EACvB,OAAO,EACP,YAAY,EACZ,oBAAoB,EACpB,cAAc,EACd,aAAa,EACb,mBAAmB,EACnB,oBAAoB,EACpB,oBAAoB,EACpB,0BAA0B,EAC1B,sBAAsB,EACtB,6BAA6B,EAC7B,oBAAoB,EACpB,cAAc,EACd,kBAAkB,EAClB,cAAc,EACd,oBAAoB,EACpB,kBAAkB,EAClB,gBAAgB,EAChB,gBAAgB,EAChB,mBAAmB,EACnB,mBAAmB,EACnB,gBAAgB,EAChB,0BAA0B,EAC1B,WAAW,EACX,OAAO,EACP,gBAAgB,EAChB,UAAU,EACV,SAAS,EACT,cAAc,EACd,iBAAiB,EACjB,iBAAiB,EACjB,cAAc,EACd,cAAc,EACd,kBAAkB,EAClB,cAAc,GACf,MAAM,YAAY,CAAC;AACpB,YAAY,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AACrD,YAAY,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAC9D,YAAY,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACzE,YAAY,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACxD,YAAY,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAChD,YAAY,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAC9D,YAAY,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAC5D,YAAY,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAG5D,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAClE,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAChE,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC/C,OAAO,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAGlE,OAAO,EACL,YAAY,EACZ,SAAS,EACT,mBAAmB,EACnB,UAAU,EACV,eAAe,GAChB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC"}