@privy-io/api-types 0.9.0 → 0.10.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 (153) hide show
  1. package/CHANGELOG.md +38 -0
  2. package/client.d.mts +33 -30
  3. package/client.d.mts.map +1 -1
  4. package/client.d.ts +33 -30
  5. package/client.d.ts.map +1 -1
  6. package/client.js +22 -8
  7. package/client.js.map +1 -1
  8. package/client.mjs +23 -9
  9. package/client.mjs.map +1 -1
  10. package/internal/types.d.mts +6 -6
  11. package/internal/types.d.mts.map +1 -1
  12. package/internal/types.d.ts +6 -6
  13. package/internal/types.d.ts.map +1 -1
  14. package/package.json +1 -1
  15. package/resources/accounts.d.mts +128 -86
  16. package/resources/accounts.d.mts.map +1 -1
  17. package/resources/accounts.d.ts +128 -86
  18. package/resources/accounts.d.ts.map +1 -1
  19. package/resources/aggregations.d.mts +43 -43
  20. package/resources/aggregations.d.mts.map +1 -1
  21. package/resources/aggregations.d.ts +43 -43
  22. package/resources/aggregations.d.ts.map +1 -1
  23. package/resources/apps.d.mts +169 -135
  24. package/resources/apps.d.mts.map +1 -1
  25. package/resources/apps.d.ts +169 -135
  26. package/resources/apps.d.ts.map +1 -1
  27. package/resources/client-auth.d.mts +646 -644
  28. package/resources/client-auth.d.mts.map +1 -1
  29. package/resources/client-auth.d.ts +646 -644
  30. package/resources/client-auth.d.ts.map +1 -1
  31. package/resources/embedded-wallets.d.mts +114 -114
  32. package/resources/embedded-wallets.d.mts.map +1 -1
  33. package/resources/embedded-wallets.d.ts +114 -114
  34. package/resources/embedded-wallets.d.ts.map +1 -1
  35. package/resources/funding.d.mts +42 -42
  36. package/resources/funding.d.mts.map +1 -1
  37. package/resources/funding.d.ts +42 -42
  38. package/resources/funding.d.ts.map +1 -1
  39. package/resources/index.d.mts +19 -18
  40. package/resources/index.d.mts.map +1 -1
  41. package/resources/index.d.ts +19 -18
  42. package/resources/index.d.ts.map +1 -1
  43. package/resources/index.js +3 -1
  44. package/resources/index.js.map +1 -1
  45. package/resources/index.mjs +2 -1
  46. package/resources/index.mjs.map +1 -1
  47. package/resources/intents.d.mts +269 -265
  48. package/resources/intents.d.mts.map +1 -1
  49. package/resources/intents.d.ts +269 -265
  50. package/resources/intents.d.ts.map +1 -1
  51. package/resources/key-quorums.d.mts +20 -20
  52. package/resources/key-quorums.d.mts.map +1 -1
  53. package/resources/key-quorums.d.ts +20 -20
  54. package/resources/key-quorums.d.ts.map +1 -1
  55. package/resources/kraken-embed.d.mts +12 -20
  56. package/resources/kraken-embed.d.mts.map +1 -1
  57. package/resources/kraken-embed.d.ts +12 -20
  58. package/resources/kraken-embed.d.ts.map +1 -1
  59. package/resources/organizations.d.mts +65 -0
  60. package/resources/organizations.d.mts.map +1 -0
  61. package/resources/organizations.d.ts +65 -0
  62. package/resources/organizations.d.ts.map +1 -0
  63. package/resources/organizations.js +9 -0
  64. package/resources/organizations.js.map +1 -0
  65. package/resources/organizations.mjs +5 -0
  66. package/resources/organizations.mjs.map +1 -0
  67. package/resources/policies.d.mts +258 -240
  68. package/resources/policies.d.mts.map +1 -1
  69. package/resources/policies.d.ts +258 -240
  70. package/resources/policies.d.ts.map +1 -1
  71. package/resources/shared.d.mts +28 -28
  72. package/resources/shared.d.mts.map +1 -1
  73. package/resources/shared.d.ts +28 -28
  74. package/resources/shared.d.ts.map +1 -1
  75. package/resources/swaps.d.mts +6 -9
  76. package/resources/swaps.d.mts.map +1 -1
  77. package/resources/swaps.d.ts +6 -9
  78. package/resources/swaps.d.ts.map +1 -1
  79. package/resources/swaps.js.map +1 -1
  80. package/resources/swaps.mjs.map +1 -1
  81. package/resources/transactions.d.mts +53 -53
  82. package/resources/transactions.d.mts.map +1 -1
  83. package/resources/transactions.d.ts +53 -53
  84. package/resources/transactions.d.ts.map +1 -1
  85. package/resources/users.d.mts +468 -459
  86. package/resources/users.d.mts.map +1 -1
  87. package/resources/users.d.ts +468 -459
  88. package/resources/users.d.ts.map +1 -1
  89. package/resources/wallet-actions.d.mts +302 -145
  90. package/resources/wallet-actions.d.mts.map +1 -1
  91. package/resources/wallet-actions.d.ts +302 -145
  92. package/resources/wallet-actions.d.ts.map +1 -1
  93. package/resources/wallets/index.d.mts +1 -1
  94. package/resources/wallets/index.d.mts.map +1 -1
  95. package/resources/wallets/index.d.ts +1 -1
  96. package/resources/wallets/index.d.ts.map +1 -1
  97. package/resources/wallets/index.js.map +1 -1
  98. package/resources/wallets/index.mjs.map +1 -1
  99. package/resources/wallets/transactions.d.mts +7 -2
  100. package/resources/wallets/transactions.d.mts.map +1 -1
  101. package/resources/wallets/transactions.d.ts +7 -2
  102. package/resources/wallets/transactions.d.ts.map +1 -1
  103. package/resources/wallets/transactions.js +1 -1
  104. package/resources/wallets/transactions.mjs +1 -1
  105. package/resources/wallets/wallets.d.mts +1424 -1227
  106. package/resources/wallets/wallets.d.mts.map +1 -1
  107. package/resources/wallets/wallets.d.ts +1424 -1227
  108. package/resources/wallets/wallets.d.ts.map +1 -1
  109. package/resources/wallets/wallets.js +4 -1
  110. package/resources/wallets/wallets.js.map +1 -1
  111. package/resources/wallets/wallets.mjs +4 -1
  112. package/resources/wallets/wallets.mjs.map +1 -1
  113. package/resources/webhooks.d.mts +935 -877
  114. package/resources/webhooks.d.mts.map +1 -1
  115. package/resources/webhooks.d.ts +935 -877
  116. package/resources/webhooks.d.ts.map +1 -1
  117. package/resources/yield.d.mts +157 -157
  118. package/resources/yield.d.mts.map +1 -1
  119. package/resources/yield.d.ts +157 -157
  120. package/resources/yield.d.ts.map +1 -1
  121. package/src/client.ts +594 -516
  122. package/src/internal/types.ts +6 -8
  123. package/src/resources/accounts.ts +157 -103
  124. package/src/resources/aggregations.ts +55 -55
  125. package/src/resources/apps.ts +221 -178
  126. package/src/resources/client-auth.ts +887 -887
  127. package/src/resources/embedded-wallets.ts +150 -150
  128. package/src/resources/funding.ts +66 -66
  129. package/src/resources/index.ts +504 -475
  130. package/src/resources/intents.ts +326 -322
  131. package/src/resources/key-quorums.ts +23 -23
  132. package/src/resources/kraken-embed.ts +14 -22
  133. package/src/resources/organizations.ts +82 -0
  134. package/src/resources/policies.ts +379 -352
  135. package/src/resources/shared.ts +34 -34
  136. package/src/resources/swaps.ts +5 -10
  137. package/src/resources/transactions.ts +86 -86
  138. package/src/resources/users.ts +707 -696
  139. package/src/resources/wallet-actions.ts +392 -185
  140. package/src/resources/wallets/index.ts +157 -148
  141. package/src/resources/wallets/transactions.ts +18 -3
  142. package/src/resources/wallets/wallets.ts +1937 -1686
  143. package/src/resources/webhooks.ts +1172 -1100
  144. package/src/resources/yield.ts +188 -188
  145. package/src/version.ts +1 -1
  146. package/version.d.mts +1 -1
  147. package/version.d.mts.map +1 -1
  148. package/version.d.ts +1 -1
  149. package/version.d.ts.map +1 -1
  150. package/version.js +1 -1
  151. package/version.js.map +1 -1
  152. package/version.mjs +1 -1
  153. package/version.mjs.map +1 -1
@@ -74,7 +74,10 @@ export declare class Wallets extends APIResource {
74
74
  * 'wallet_id',
75
75
  * {
76
76
  * params: {
77
- * hash: '0x0775aeed9c9ce6e0fbc4db25c5e4e6368029651c905c286f813126a09025a21e',
77
+ * bytes:
78
+ * '0a0234ea220809701d7a17a77e04408093e981a6335a66080112620a2d747970652e676f6f676c65617069732e636f6d2f70726f746f636f6c2e5472616e73666572436f6e747261637412310a15417009bf59e27d2031a23a61e1590289fc3d21b3cd121541132b98ed6fb80a2d45f177cdef091ae2d9dc115418e80770a0bee581a633',
79
+ * encoding: 'hex',
80
+ * hash_function: 'sha256',
78
81
  * },
79
82
  * },
80
83
  * );
@@ -172,38 +175,9 @@ export interface WalletRevokeResponse {
172
175
  message: string;
173
176
  }
174
177
  /**
175
- * The wallet chain types that support curve-based signing.
176
- */
177
- export type CurveSigningChainType = 'cosmos' | 'stellar' | 'sui' | 'aptos' | 'movement' | 'tron' | 'bitcoin-segwit' | 'bitcoin-taproot' | 'near' | 'ton' | 'starknet';
178
- /**
179
- * The wallet chain types that are not first class chains.
180
- */
181
- export type ExtendedChainType = 'cosmos' | 'stellar' | 'sui' | 'aptos' | 'movement' | 'tron' | 'bitcoin-segwit' | 'bitcoin-taproot' | 'near' | 'ton' | 'starknet' | 'spark';
182
- /**
183
- * The wallet chain types that offer first class support.
184
- */
185
- export type FirstClassChainType = 'ethereum' | 'solana';
186
- /**
187
- * The wallet chain types.
188
- */
189
- export type WalletChainType = 'ethereum' | 'solana' | 'cosmos' | 'stellar' | 'sui' | 'aptos' | 'movement' | 'tron' | 'bitcoin-segwit' | 'bitcoin-taproot' | 'near' | 'ton' | 'starknet' | 'spark';
190
- /**
191
- * The role of an authorization key, controlling what actions it can authorize on a
192
- * wallet.
193
- */
194
- export type AuthorizationKeyRole = 'root' | 'manager' | 'delegated-actions' | null;
195
- /**
196
- * The entropy type of the wallet.
197
- */
198
- export type WalletEntropyType = 'hd' | 'private-key';
199
- /**
200
- * The derivation strategy used for Solana wallets.
201
- */
202
- export type SolanaWalletDerivationStrategy = 'ENTROPY_TO_SEED' | 'ENTROPY_TO_MNEMONIC_TO_SEED';
203
- /**
204
- * An optional list of up to one policy ID to enforce on the wallet.
178
+ * Additional signers for the wallet.
205
179
  */
206
- export type PolicyInput = Array<string>;
180
+ export type AdditionalSignerInput = Array<AdditionalSignerItemInput>;
207
181
  /**
208
182
  * A single additional signer for a wallet, with an optional policy override.
209
183
  */
@@ -218,47 +192,71 @@ export interface AdditionalSignerItemInput {
218
192
  override_policy_ids?: PolicyInput;
219
193
  }
220
194
  /**
221
- * Additional signers for the wallet.
195
+ * A blockchain wallet address (Ethereum or Solana).
222
196
  */
223
- export type AdditionalSignerInput = Array<AdditionalSignerItemInput>;
197
+ export type Address = string;
224
198
  /**
225
- * A single additional signer on a wallet, with an optional policy override.
199
+ * Whether the amount refers to the input token or output token.
226
200
  */
227
- export interface WalletAdditionalSignerItem {
228
- /**
229
- * A unique identifier for a key quorum.
230
- */
231
- signer_id: SharedAPI.KeyQuorumID;
201
+ export type AmountType = 'exact_input' | 'exact_output';
202
+ /**
203
+ * Dashboard response for a wallet authorization key (includes role, which is an
204
+ * internal-only concept).
205
+ */
206
+ export interface AuthorizationKeyDashboardResponse {
207
+ id: string;
208
+ created_at: number;
209
+ display_name: string | null;
210
+ public_key: string;
232
211
  /**
233
- * An optional list of up to one policy ID to enforce on the wallet.
212
+ * The role of an authorization key, controlling what actions it can authorize on a
213
+ * wallet.
234
214
  */
235
- override_policy_ids?: PolicyInput;
215
+ role: AuthorizationKeyRole | null;
236
216
  }
237
217
  /**
238
- * Additional signers for the wallet.
218
+ * Public-facing response for a wallet authorization key.
239
219
  */
240
- export type WalletAdditionalSigner = Array<WalletAdditionalSignerItem>;
220
+ export interface AuthorizationKeyResponse {
221
+ id: string;
222
+ created_at: number;
223
+ display_name: string | null;
224
+ public_key: string;
225
+ }
241
226
  /**
242
- * A blockchain wallet address (Ethereum or Solana).
227
+ * The role of an authorization key, controlling what actions it can authorize on a
228
+ * wallet.
243
229
  */
244
- export type Address = string;
230
+ export type AuthorizationKeyRole = 'root' | 'manager' | 'delegated-actions' | null;
245
231
  /**
246
- * Information about the custodian managing this wallet.
232
+ * The wallet chain types that support curve-based signing.
247
233
  */
248
- export interface WalletCustodian {
234
+ export type CurveSigningChainType = 'cosmos' | 'stellar' | 'sui' | 'aptos' | 'movement' | 'tron' | 'bitcoin-segwit' | 'bitcoin-taproot' | 'pearl' | 'near' | 'ton' | 'starknet';
235
+ /**
236
+ * The cryptographic curve type used by the wallet.
237
+ */
238
+ export type CurveType = 'secp256k1' | 'ed25519' | 'starknet';
239
+ /**
240
+ * Information about a custodial wallet.
241
+ */
242
+ export interface CustodialWallet {
243
+ id: string;
244
+ address: string;
249
245
  /**
250
- * The custodian responsible for the wallet.
246
+ * The chain type of the custodial wallet.
251
247
  */
252
- provider: string;
248
+ chain_type: CustodialWalletChainType;
253
249
  /**
254
- * The resource ID of the beneficiary of the custodial wallet.
250
+ * Information about the custodian managing this wallet.
255
251
  */
256
- provider_user_id: string;
252
+ custody: WalletCustodian;
253
+ owner_id: string | null;
254
+ /**
255
+ * Additional signers for the wallet.
256
+ */
257
+ additional_signers?: WalletAdditionalSigner;
258
+ policy_ids?: Array<string>;
257
259
  }
258
- /**
259
- * The provider of the custodial wallet.
260
- */
261
- export type CustodialWalletProvider = 'bridge';
262
260
  /**
263
261
  * The chain type of the custodial wallet.
264
262
  */
@@ -295,279 +293,243 @@ export interface CustodialWalletCreateInput {
295
293
  policy_ids?: PolicyInput;
296
294
  }
297
295
  /**
298
- * Information about a custodial wallet.
296
+ * The provider of the custodial wallet.
299
297
  */
300
- export interface CustodialWallet {
301
- id: string;
302
- address: string;
298
+ export type CustodialWalletProvider = 'bridge';
299
+ /**
300
+ * Source for a transfer identified by a token contract address (EVM) or mint
301
+ * address (Solana). Use this variant for tokens that are not first-class assets.
302
+ */
303
+ export interface CustomTokenTransferSource {
303
304
  /**
304
- * The chain type of the custodial wallet.
305
+ * Amount as a decimal string in the token's standard unit (e.g. "1.5" for 1.5
306
+ * USDC, "0.01" for 0.01 ETH). Not in the smallest on-chain unit (wei, lamports,
307
+ * etc.).
305
308
  */
306
- chain_type: CustodialWalletChainType;
309
+ amount: string;
307
310
  /**
308
- * Information about the custodian managing this wallet.
311
+ * The token contract address (EVM) or mint address (Solana) of the asset to
312
+ * transfer.
309
313
  */
310
- custody: WalletCustodian;
311
- owner_id: string | null;
314
+ asset_address: string;
312
315
  /**
313
- * Additional signers for the wallet.
316
+ * The blockchain network on which to perform the transfer. Supported chains
317
+ * include: 'ethereum', 'base', 'arbitrum', 'polygon', 'solana', and their
318
+ * respective testnets.
314
319
  */
315
- additional_signers?: WalletAdditionalSigner;
316
- policy_ids?: Array<string>;
320
+ chain: string;
317
321
  }
318
322
  /**
319
- * The encryption type of the wallet to import. Currently only supports `HPKE`.
320
- */
321
- export type HpkeEncryption = 'HPKE';
322
- /**
323
- * The recipient public key for HPKE encryption, in PEM or DER (base64-encoded)
324
- * format.
325
- */
326
- export type RecipientPublicKey = string;
327
- /**
328
- * The export type. 'display' is for showing the key to the user in the UI,
329
- * 'client' is for exporting to the client application.
330
- */
331
- export type ExportType = 'display' | 'client';
332
- /**
333
- * Input for exporting a wallet (private key or seed phrase) with HPKE encryption.
323
+ * Executes the EVM `personal_sign` RPC (EIP-191) to sign a message.
334
324
  */
335
- export interface PrivateKeyExportInput {
336
- /**
337
- * The encryption type of the wallet to import. Currently only supports `HPKE`.
338
- */
339
- encryption_type: HpkeEncryption;
340
- /**
341
- * The recipient public key for HPKE encryption, in PEM or DER (base64-encoded)
342
- * format.
343
- */
344
- recipient_public_key: RecipientPublicKey;
345
- export_seed_phrase?: boolean;
325
+ export interface EthereumPersonalSignRpcInput {
326
+ method: 'personal_sign';
346
327
  /**
347
- * The export type. 'display' is for showing the key to the user in the UI,
348
- * 'client' is for exporting to the client application.
328
+ * Parameters for the EVM `personal_sign` RPC.
349
329
  */
350
- export_type?: ExportType;
330
+ params: EthereumPersonalSignRpcInputParams;
331
+ address?: string;
332
+ chain_type?: 'ethereum';
333
+ wallet_id?: string;
351
334
  }
352
335
  /**
353
- * Response containing HPKE-encrypted wallet data (private key or seed phrase).
336
+ * Parameters for the EVM `personal_sign` RPC.
354
337
  */
355
- export interface PrivateKeyExportResponse {
356
- ciphertext: string;
357
- encapsulated_key: string;
358
- /**
359
- * The encryption type of the wallet to import. Currently only supports `HPKE`.
360
- */
361
- encryption_type: HpkeEncryption;
338
+ export interface EthereumPersonalSignRpcInputParams {
339
+ encoding: 'utf-8' | 'hex';
340
+ message: string;
362
341
  }
363
342
  /**
364
- * Input for exporting a wallet (private key or seed phrase) with HPKE encryption.
343
+ * Response to the EVM `personal_sign` RPC.
365
344
  */
366
- export interface SeedPhraseExportInput {
367
- /**
368
- * The encryption type of the wallet to import. Currently only supports `HPKE`.
369
- */
370
- encryption_type: HpkeEncryption;
371
- /**
372
- * The recipient public key for HPKE encryption, in PEM or DER (base64-encoded)
373
- * format.
374
- */
375
- recipient_public_key: RecipientPublicKey;
376
- export_seed_phrase?: boolean;
345
+ export interface EthereumPersonalSignRpcResponse {
377
346
  /**
378
- * The export type. 'display' is for showing the key to the user in the UI,
379
- * 'client' is for exporting to the client application.
347
+ * Data returned by the EVM `personal_sign` RPC.
380
348
  */
381
- export_type?: ExportType;
349
+ data: EthereumPersonalSignRpcResponseData;
350
+ method: 'personal_sign';
382
351
  }
383
352
  /**
384
- * Response containing HPKE-encrypted wallet data (private key or seed phrase).
353
+ * Data returned by the EVM `personal_sign` RPC.
385
354
  */
386
- export interface SeedPhraseExportResponse {
387
- ciphertext: string;
388
- encapsulated_key: string;
389
- /**
390
- * The encryption type of the wallet to import. Currently only supports `HPKE`.
391
- */
392
- encryption_type: HpkeEncryption;
355
+ export interface EthereumPersonalSignRpcResponseData {
356
+ encoding: 'hex';
357
+ signature: string;
393
358
  }
394
359
  /**
395
- * The chain type of the wallet to import. Currently supports `ethereum` and
396
- * `solana`.
360
+ * Request body for Ethereum wallet RPC operations, discriminated by method.
397
361
  */
398
- export type WalletImportSupportedChains = 'ethereum' | 'solana';
362
+ export type EthereumRpcInput = EthereumSignTransactionRpcInput | EthereumSendTransactionRpcInput | EthereumPersonalSignRpcInput | EthereumSignTypedDataRpcInput | EthereumSecp256k1SignRpcInput | EthereumSign7702AuthorizationRpcInput | EthereumSignUserOperationRpcInput | EthereumSendCallsRpcInput;
399
363
  /**
400
- * The entropy type of the wallet to import. Supports `private-key` for raw private
401
- * keys and `hd` for HD wallet seed phrases.
364
+ * Response body for Ethereum wallet RPC operations, discriminated by method.
402
365
  */
403
- export type WalletImportSupportedEntropyTypes = 'private-key' | 'hd';
366
+ export type EthereumRpcResponse = EthereumPersonalSignRpcResponse | EthereumSignTypedDataRpcResponse | EthereumSignTransactionRpcResponse | EthereumSendTransactionRpcResponse | EthereumSignUserOperationRpcResponse | EthereumSign7702AuthorizationRpcResponse | EthereumSecp256k1SignRpcResponse | EthereumSendCallsRpcResponse;
404
367
  /**
405
- * Response from initializing a wallet import, containing the encryption public
406
- * key.
368
+ * Signs a raw hash on the secp256k1 curve.
407
369
  */
408
- export interface WalletImportInitResponse {
409
- encryption_public_key: string;
370
+ export interface EthereumSecp256k1SignRpcInput {
371
+ method: 'secp256k1_sign';
410
372
  /**
411
- * The encryption type of the wallet to import. Currently only supports `HPKE`.
373
+ * Parameters for the EVM `secp256k1_sign` RPC.
412
374
  */
413
- encryption_type: HpkeEncryption;
414
- import_id?: string;
375
+ params: EthereumSecp256k1SignRpcInputParams;
376
+ address?: string;
377
+ chain_type?: 'ethereum';
378
+ wallet_id?: string;
415
379
  }
416
380
  /**
417
- * The AEAD algorithm used for HPKE encryption.
418
- */
419
- export type HpkeAeadAlgorithm = 'CHACHA20_POLY1305' | 'AES_GCM256';
420
- /**
421
- * Optional HPKE configuration for wallet import decryption. These parameters allow
422
- * importing wallets encrypted by external providers that use different HPKE
423
- * configurations.
381
+ * Parameters for the EVM `secp256k1_sign` RPC.
424
382
  */
425
- export interface HpkeImportConfig {
426
- /**
427
- * Additional Authenticated Data (AAD) used during encryption. Should be
428
- * base64-encoded bytes.
429
- */
430
- aad?: string;
431
- /**
432
- * The AEAD algorithm used for HPKE encryption.
433
- */
434
- aead_algorithm?: HpkeAeadAlgorithm;
383
+ export interface EthereumSecp256k1SignRpcInputParams {
435
384
  /**
436
- * Application-specific context information (INFO) used during HPKE encryption.
437
- * Should be base64-encoded bytes.
385
+ * A hex-encoded string prefixed with '0x'.
438
386
  */
439
- info?: string;
387
+ hash: Hex;
440
388
  }
441
389
  /**
442
- * The cryptographic curve type used by the wallet.
390
+ * Response to the EVM `secp256k1_sign` RPC.
443
391
  */
444
- export type CurveType = 'secp256k1' | 'ed25519' | 'starknet';
445
- /**
446
- * A BIP-32 hierarchical deterministic wallet derivation path.
447
- */
448
- export type HDPath = string;
449
- /**
450
- * The signing algorithm used by the wallet.
451
- */
452
- export type SigningAlgorithm = 'ECDSA' | 'EdDSA' | 'Schnorr';
453
- /**
454
- * A hex-encoded string prefixed with '0x'.
455
- */
456
- export type Hex = string;
457
- /**
458
- * A quantity value that can be either a hex string starting with '0x' or a
459
- * non-negative integer.
460
- */
461
- export type Quantity = Hex | number;
462
- /**
463
- * Exports the private key of the wallet.
464
- */
465
- export interface ExportPrivateKeyRpcInput {
466
- address: string;
467
- method: 'exportPrivateKey';
392
+ export interface EthereumSecp256k1SignRpcResponse {
468
393
  /**
469
- * Input for exporting a wallet (private key or seed phrase) with HPKE encryption.
394
+ * Data returned by the EVM `secp256k1_sign` RPC.
470
395
  */
471
- params: PrivateKeyExportInput;
396
+ data: EthereumSecp256k1SignRpcResponseData;
397
+ method: 'secp256k1_sign';
472
398
  }
473
399
  /**
474
- * Response to the `exportPrivateKey` RPC.
400
+ * Data returned by the EVM `secp256k1_sign` RPC.
475
401
  */
476
- export interface ExportPrivateKeyRpcResponse {
402
+ export interface EthereumSecp256k1SignRpcResponseData {
403
+ encoding: 'hex';
477
404
  /**
478
- * Input for exporting a wallet (private key or seed phrase) with HPKE encryption.
405
+ * A hex-encoded string prefixed with '0x'.
479
406
  */
480
- data: PrivateKeyExportInput;
481
- method: 'exportPrivateKey';
407
+ signature: Hex;
482
408
  }
483
409
  /**
484
- * Exports the seed phrase of the wallet.
410
+ * A single call within a batched wallet_sendCalls request.
485
411
  */
486
- export interface ExportSeedPhraseRpcInput {
487
- address: string;
488
- method: 'exportSeedPhrase';
412
+ export interface EthereumSendCallsCall {
413
+ to: string;
489
414
  /**
490
- * Input for exporting a wallet (private key or seed phrase) with HPKE encryption.
415
+ * A hex-encoded string prefixed with '0x'.
491
416
  */
492
- params: SeedPhraseExportInput;
493
- }
494
- /**
495
- * Response to the `exportSeedPhrase` RPC.
496
- */
497
- export interface ExportSeedPhraseRpcResponse {
417
+ data?: Hex;
498
418
  /**
499
- * Response containing HPKE-encrypted wallet data (private key or seed phrase).
419
+ * A quantity value that can be either a hex string starting with '0x' or a
420
+ * non-negative integer.
500
421
  */
501
- data: SeedPhraseExportResponse;
502
- method: 'exportSeedPhrase';
422
+ value?: Quantity;
503
423
  }
504
424
  /**
505
- * Parameters for signing a pre-computed hash with the `raw_sign` RPC.
425
+ * Executes the `wallet_sendCalls` RPC (EIP-5792) to batch multiple calls into a
426
+ * single atomic transaction.
506
427
  */
507
- export interface RawSignHashParams {
428
+ export interface EthereumSendCallsRpcInput {
429
+ /**
430
+ * A valid CAIP-2 chain ID (e.g. 'eip155:1').
431
+ */
432
+ caip2: AppsAPI.Caip2;
433
+ method: 'wallet_sendCalls';
434
+ /**
435
+ * Parameters for the `wallet_sendCalls` RPC.
436
+ */
437
+ params: EthereumSendCallsRpcInputParams;
438
+ address?: string;
439
+ chain_type?: 'ethereum';
508
440
  /**
509
441
  * A hex-encoded string prefixed with '0x'.
510
442
  */
511
- hash: Hex;
443
+ experimental_data_suffix?: Hex;
444
+ sponsor?: boolean;
445
+ wallet_id?: string;
512
446
  }
513
447
  /**
514
- * Encoding scheme for bytes in the `raw_sign` RPC.
448
+ * Parameters for the `wallet_sendCalls` RPC.
515
449
  */
516
- export type RawSignBytesEncoding = 'utf-8' | 'hex' | 'base64';
450
+ export interface EthereumSendCallsRpcInputParams {
451
+ calls: Array<EthereumSendCallsCall>;
452
+ }
517
453
  /**
518
- * Hash function for bytes in the `raw_sign` RPC.
454
+ * Response to the `wallet_sendCalls` RPC.
519
455
  */
520
- export type RawSignBytesHashFunction = 'keccak256' | 'sha256' | 'blake2b256';
456
+ export interface EthereumSendCallsRpcResponse {
457
+ /**
458
+ * Data returned by the `wallet_sendCalls` RPC.
459
+ */
460
+ data: EthereumSendCallsRpcResponseData;
461
+ method: 'wallet_sendCalls';
462
+ }
521
463
  /**
522
- * Parameters for hashing and signing bytes with the `raw_sign` RPC.
464
+ * Data returned by the `wallet_sendCalls` RPC.
523
465
  */
524
- export interface RawSignBytesParams {
466
+ export interface EthereumSendCallsRpcResponseData {
525
467
  /**
526
- * The bytes to hash and sign.
468
+ * A valid CAIP-2 chain ID (e.g. 'eip155:1').
527
469
  */
528
- bytes: string;
470
+ caip2: AppsAPI.Caip2;
471
+ transaction_id: string;
472
+ }
473
+ /**
474
+ * Executes the EVM `eth_sendTransaction` RPC to sign and broadcast a transaction.
475
+ */
476
+ export interface EthereumSendTransactionRpcInput {
529
477
  /**
530
- * Encoding scheme for bytes in the `raw_sign` RPC.
478
+ * A valid CAIP-2 chain ID (e.g. 'eip155:1').
531
479
  */
532
- encoding: RawSignBytesEncoding;
480
+ caip2: AppsAPI.Caip2;
481
+ method: 'eth_sendTransaction';
533
482
  /**
534
- * Hash function for bytes in the `raw_sign` RPC.
483
+ * Parameters for the EVM `eth_sendTransaction` RPC.
535
484
  */
536
- hash_function: RawSignBytesHashFunction;
485
+ params: EthereumSendTransactionRpcInputParams;
486
+ address?: string;
487
+ chain_type?: 'ethereum';
488
+ /**
489
+ * A hex-encoded string prefixed with '0x'.
490
+ */
491
+ experimental_data_suffix?: Hex;
492
+ reference_id?: string;
493
+ sponsor?: boolean;
494
+ wallet_id?: string;
537
495
  }
538
496
  /**
539
- * Parameters for the `raw_sign` RPC.
540
- */
541
- export type RawSignInputParams = RawSignHashParams | RawSignBytesParams;
542
- /**
543
- * Provide either `hash` (to sign a pre-computed hash) OR `bytes`, `encoding`, and
544
- * `hash_function` (to hash and then sign). These options are mutually exclusive.
497
+ * Parameters for the EVM `eth_sendTransaction` RPC.
545
498
  */
546
- export interface RawSignInput {
499
+ export interface EthereumSendTransactionRpcInputParams {
547
500
  /**
548
- * Parameters for the `raw_sign` RPC.
501
+ * An unsigned Ethereum transaction object. Supports standard EVM transaction types
502
+ * (0, 1, 2, 4) and Tempo transactions (type 118).
549
503
  */
550
- params: RawSignInputParams;
504
+ transaction: UnsignedEthereumTransaction;
551
505
  }
552
506
  /**
553
- * Data returned by the `raw_sign` RPC.
507
+ * Response to the EVM `eth_sendTransaction` RPC.
554
508
  */
555
- export interface RawSignResponseData {
556
- encoding: 'hex';
509
+ export interface EthereumSendTransactionRpcResponse {
557
510
  /**
558
- * A hex-encoded string prefixed with '0x'.
511
+ * Data returned by the EVM `eth_sendTransaction` RPC.
559
512
  */
560
- signature: Hex;
513
+ data: EthereumSendTransactionRpcResponseData;
514
+ method: 'eth_sendTransaction';
561
515
  }
562
516
  /**
563
- * Response to the `raw_sign` RPC.
517
+ * Data returned by the EVM `eth_sendTransaction` RPC.
564
518
  */
565
- export interface RawSignResponse {
519
+ export interface EthereumSendTransactionRpcResponseData {
566
520
  /**
567
- * Data returned by the `raw_sign` RPC.
521
+ * A valid CAIP-2 chain ID (e.g. 'eip155:1').
568
522
  */
569
- data: RawSignResponseData;
570
- method: 'raw_sign';
523
+ caip2: AppsAPI.Caip2;
524
+ hash: string;
525
+ reference_id?: string | null;
526
+ transaction_id?: string;
527
+ /**
528
+ * An unsigned Ethereum transaction object. Supports standard EVM transaction types
529
+ * (0, 1, 2, 4) and Tempo transactions (type 118).
530
+ */
531
+ transaction_request?: UnsignedEthereumTransaction;
532
+ user_operation_hash?: string;
571
533
  }
572
534
  /**
573
535
  * A signed EIP-7702 authorization that delegates code execution to a contract
@@ -596,188 +558,179 @@ export interface EthereumSign7702Authorization {
596
558
  y_parity: number;
597
559
  }
598
560
  /**
599
- * An unsigned Ethereum transaction object.
561
+ * Signs an EIP-7702 authorization.
600
562
  */
601
- export interface UnsignedEthereumTransaction {
602
- authorization_list?: Array<EthereumSign7702Authorization>;
603
- /**
604
- * A quantity value that can be either a hex string starting with '0x' or a
605
- * non-negative integer.
606
- */
607
- chain_id?: Quantity;
608
- /**
609
- * A hex-encoded string prefixed with '0x'.
610
- */
611
- data?: Hex;
612
- from?: string;
613
- /**
614
- * A quantity value that can be either a hex string starting with '0x' or a
615
- * non-negative integer.
616
- */
617
- gas_limit?: Quantity;
618
- /**
619
- * A quantity value that can be either a hex string starting with '0x' or a
620
- * non-negative integer.
621
- */
622
- gas_price?: Quantity;
563
+ export interface EthereumSign7702AuthorizationRpcInput {
564
+ method: 'eth_sign7702Authorization';
623
565
  /**
624
- * A quantity value that can be either a hex string starting with '0x' or a
625
- * non-negative integer.
566
+ * Parameters for the EVM `eth_sign7702Authorization` RPC.
626
567
  */
627
- max_fee_per_gas?: Quantity;
568
+ params: EthereumSign7702AuthorizationRpcInputParams;
569
+ address?: string;
570
+ chain_type?: 'ethereum';
571
+ wallet_id?: string;
572
+ }
573
+ /**
574
+ * Parameters for the EVM `eth_sign7702Authorization` RPC.
575
+ */
576
+ export interface EthereumSign7702AuthorizationRpcInputParams {
628
577
  /**
629
578
  * A quantity value that can be either a hex string starting with '0x' or a
630
579
  * non-negative integer.
631
580
  */
632
- max_priority_fee_per_gas?: Quantity;
581
+ chain_id: Quantity;
582
+ contract: string;
583
+ executor?: 'self';
633
584
  /**
634
585
  * A quantity value that can be either a hex string starting with '0x' or a
635
586
  * non-negative integer.
636
587
  */
637
588
  nonce?: Quantity;
638
- to?: string;
639
- type?: 0 | 1 | 2 | 4;
589
+ }
590
+ /**
591
+ * Response to the EVM `eth_sign7702Authorization` RPC.
592
+ */
593
+ export interface EthereumSign7702AuthorizationRpcResponse {
640
594
  /**
641
- * A quantity value that can be either a hex string starting with '0x' or a
642
- * non-negative integer.
595
+ * Data returned by the EVM `eth_sign7702Authorization` RPC.
643
596
  */
644
- value?: Quantity;
597
+ data: EthereumSign7702AuthorizationRpcResponseData;
598
+ method: 'eth_sign7702Authorization';
645
599
  }
646
600
  /**
647
- * An ERC-4337 user operation.
601
+ * Data returned by the EVM `eth_sign7702Authorization` RPC.
648
602
  */
649
- export interface UserOperationInput {
603
+ export interface EthereumSign7702AuthorizationRpcResponseData {
650
604
  /**
651
- * A hex-encoded string prefixed with '0x'.
605
+ * A signed EIP-7702 authorization that delegates code execution to a contract
606
+ * address.
652
607
  */
653
- call_data: Hex;
608
+ authorization: EthereumSign7702Authorization;
609
+ }
610
+ /**
611
+ * Executes the EVM `eth_signTransaction` RPC to sign a transaction.
612
+ */
613
+ export interface EthereumSignTransactionRpcInput {
614
+ method: 'eth_signTransaction';
654
615
  /**
655
- * A hex-encoded string prefixed with '0x'.
616
+ * Parameters for the EVM `eth_signTransaction` RPC.
656
617
  */
657
- call_gas_limit: Hex;
618
+ params: EthereumSignTransactionRpcInputParams;
619
+ address?: string;
620
+ chain_type?: 'ethereum';
621
+ wallet_id?: string;
622
+ }
623
+ /**
624
+ * Parameters for the EVM `eth_signTransaction` RPC.
625
+ */
626
+ export interface EthereumSignTransactionRpcInputParams {
658
627
  /**
659
- * A hex-encoded string prefixed with '0x'.
628
+ * An unsigned Ethereum transaction object. Supports standard EVM transaction types
629
+ * (0, 1, 2, 4) and Tempo transactions (type 118).
660
630
  */
661
- max_fee_per_gas: Hex;
631
+ transaction: UnsignedEthereumTransaction;
632
+ }
633
+ /**
634
+ * Response to the EVM `eth_signTransaction` RPC.
635
+ */
636
+ export interface EthereumSignTransactionRpcResponse {
662
637
  /**
663
- * A hex-encoded string prefixed with '0x'.
638
+ * Data returned by the EVM `eth_signTransaction` RPC.
664
639
  */
665
- max_priority_fee_per_gas: Hex;
666
- /**
667
- * A hex-encoded string prefixed with '0x'.
668
- */
669
- nonce: Hex;
670
- /**
671
- * A hex-encoded string prefixed with '0x'.
672
- */
673
- pre_verification_gas: Hex;
674
- sender: string;
675
- /**
676
- * A hex-encoded string prefixed with '0x'.
677
- */
678
- verification_gas_limit: Hex;
679
- paymaster?: string;
680
- /**
681
- * A hex-encoded string prefixed with '0x'.
682
- */
683
- paymaster_data?: Hex;
684
- /**
685
- * A hex-encoded string prefixed with '0x'.
686
- */
687
- paymaster_post_op_gas_limit?: Hex;
688
- /**
689
- * A hex-encoded string prefixed with '0x'.
690
- */
691
- paymaster_verification_gas_limit?: Hex;
692
- }
693
- /**
694
- * The domain parameters for EIP-712 typed data signing.
695
- */
696
- export type TypedDataDomainInputParams = {
697
- [key: string]: unknown;
698
- };
699
- /**
700
- * A single field definition in an EIP-712 typed data type.
701
- */
702
- export interface TypedDataTypeFieldInput {
703
- name: string;
704
- type: string;
640
+ data: EthereumSignTransactionRpcResponseData;
641
+ method: 'eth_signTransaction';
705
642
  }
706
643
  /**
707
- * The type definitions for EIP-712 typed data signing.
708
- */
709
- export type TypedDataTypesInputParams = {
710
- [key: string]: Array<TypedDataTypeFieldInput>;
711
- };
712
- /**
713
- * Parameters for the EVM `personal_sign` RPC.
644
+ * Data returned by the EVM `eth_signTransaction` RPC.
714
645
  */
715
- export interface EthereumPersonalSignRpcInputParams {
716
- encoding: 'utf-8' | 'hex';
717
- message: string;
646
+ export interface EthereumSignTransactionRpcResponseData {
647
+ encoding: 'rlp';
648
+ signed_transaction: string;
718
649
  }
719
650
  /**
720
- * Executes the EVM `personal_sign` RPC (EIP-191) to sign a message.
651
+ * Executes the EVM `eth_signTypedData_v4` RPC (EIP-712) to sign a typed data
652
+ * object.
721
653
  */
722
- export interface EthereumPersonalSignRpcInput {
723
- method: 'personal_sign';
654
+ export interface EthereumSignTypedDataRpcInput {
655
+ method: 'eth_signTypedData_v4';
724
656
  /**
725
- * Parameters for the EVM `personal_sign` RPC.
657
+ * Parameters for the EVM `eth_signTypedData_v4` RPC.
726
658
  */
727
- params: EthereumPersonalSignRpcInputParams;
659
+ params: EthereumSignTypedDataRpcInputParams;
728
660
  address?: string;
729
661
  chain_type?: 'ethereum';
730
662
  wallet_id?: string;
731
663
  }
732
664
  /**
733
- * Parameters for the EVM `eth_signTransaction` RPC.
665
+ * Parameters for the EVM `eth_signTypedData_v4` RPC.
734
666
  */
735
- export interface EthereumSignTransactionRpcInputParams {
667
+ export interface EthereumSignTypedDataRpcInputParams {
736
668
  /**
737
- * An unsigned Ethereum transaction object.
669
+ * EIP-712 typed data object.
738
670
  */
739
- transaction: UnsignedEthereumTransaction;
671
+ typed_data: EthereumTypedDataInput;
740
672
  }
741
673
  /**
742
- * Executes the EVM `eth_signTransaction` RPC to sign a transaction.
674
+ * Response to the EVM `eth_signTypedData_v4` RPC.
743
675
  */
744
- export interface EthereumSignTransactionRpcInput {
745
- method: 'eth_signTransaction';
676
+ export interface EthereumSignTypedDataRpcResponse {
746
677
  /**
747
- * Parameters for the EVM `eth_signTransaction` RPC.
678
+ * Data returned by the EVM `eth_signTypedData_v4` RPC.
748
679
  */
749
- params: EthereumSignTransactionRpcInputParams;
680
+ data: EthereumSignTypedDataRpcResponseData;
681
+ method: 'eth_signTypedData_v4';
682
+ }
683
+ /**
684
+ * Data returned by the EVM `eth_signTypedData_v4` RPC.
685
+ */
686
+ export interface EthereumSignTypedDataRpcResponseData {
687
+ encoding: 'hex';
688
+ signature: string;
689
+ }
690
+ /**
691
+ * Executes an RPC method to hash and sign a UserOperation.
692
+ */
693
+ export interface EthereumSignUserOperationRpcInput {
694
+ method: 'eth_signUserOperation';
695
+ /**
696
+ * Parameters for the EVM `eth_signUserOperation` RPC.
697
+ */
698
+ params: EthereumSignUserOperationRpcInputParams;
750
699
  address?: string;
751
700
  chain_type?: 'ethereum';
752
701
  wallet_id?: string;
753
702
  }
754
703
  /**
755
- * Parameters for the EVM `eth_sendTransaction` RPC.
704
+ * Parameters for the EVM `eth_signUserOperation` RPC.
756
705
  */
757
- export interface EthereumSendTransactionRpcInputParams {
706
+ export interface EthereumSignUserOperationRpcInputParams {
758
707
  /**
759
- * An unsigned Ethereum transaction object.
708
+ * A quantity value that can be either a hex string starting with '0x' or a
709
+ * non-negative integer.
760
710
  */
761
- transaction: UnsignedEthereumTransaction;
711
+ chain_id: Quantity;
712
+ contract: string;
713
+ /**
714
+ * An ERC-4337 user operation.
715
+ */
716
+ user_operation: UserOperationInput;
762
717
  }
763
718
  /**
764
- * Executes the EVM `eth_sendTransaction` RPC to sign and broadcast a transaction.
719
+ * Response to the EVM `eth_signUserOperation` RPC.
765
720
  */
766
- export interface EthereumSendTransactionRpcInput {
767
- /**
768
- * A valid CAIP-2 chain ID (e.g. 'eip155:1').
769
- */
770
- caip2: AppsAPI.Caip2;
771
- method: 'eth_sendTransaction';
721
+ export interface EthereumSignUserOperationRpcResponse {
772
722
  /**
773
- * Parameters for the EVM `eth_sendTransaction` RPC.
723
+ * Data returned by the EVM `eth_signUserOperation` RPC.
774
724
  */
775
- params: EthereumSendTransactionRpcInputParams;
776
- address?: string;
777
- chain_type?: 'ethereum';
778
- reference_id?: string;
779
- sponsor?: boolean;
780
- wallet_id?: string;
725
+ data: EthereumSignUserOperationRpcResponseData;
726
+ method: 'eth_signUserOperation';
727
+ }
728
+ /**
729
+ * Data returned by the EVM `eth_signUserOperation` RPC.
730
+ */
731
+ export interface EthereumSignUserOperationRpcResponseData {
732
+ encoding: 'hex';
733
+ signature: string;
781
734
  }
782
735
  /**
783
736
  * EIP-712 typed data object.
@@ -797,338 +750,416 @@ export interface EthereumTypedDataInput {
797
750
  types: TypedDataTypesInputParams;
798
751
  }
799
752
  /**
800
- * Parameters for the EVM `eth_signTypedData_v4` RPC.
753
+ * Exports the private key of the wallet.
801
754
  */
802
- export interface EthereumSignTypedDataRpcInputParams {
755
+ export interface ExportPrivateKeyRpcInput {
756
+ address: string;
757
+ method: 'exportPrivateKey';
803
758
  /**
804
- * EIP-712 typed data object.
759
+ * Input for exporting a wallet (private key or seed phrase) with HPKE encryption.
805
760
  */
806
- typed_data: EthereumTypedDataInput;
761
+ params: PrivateKeyExportInput;
807
762
  }
808
763
  /**
809
- * Executes the EVM `eth_signTypedData_v4` RPC (EIP-712) to sign a typed data
810
- * object.
764
+ * Response to the `exportPrivateKey` RPC.
811
765
  */
812
- export interface EthereumSignTypedDataRpcInput {
813
- method: 'eth_signTypedData_v4';
766
+ export interface ExportPrivateKeyRpcResponse {
814
767
  /**
815
- * Parameters for the EVM `eth_signTypedData_v4` RPC.
768
+ * Input for exporting a wallet (private key or seed phrase) with HPKE encryption.
816
769
  */
817
- params: EthereumSignTypedDataRpcInputParams;
818
- address?: string;
819
- chain_type?: 'ethereum';
820
- wallet_id?: string;
770
+ data: PrivateKeyExportInput;
771
+ method: 'exportPrivateKey';
821
772
  }
822
773
  /**
823
- * Parameters for the EVM `secp256k1_sign` RPC.
774
+ * Exports the seed phrase of the wallet.
824
775
  */
825
- export interface EthereumSecp256k1SignRpcInputParams {
776
+ export interface ExportSeedPhraseRpcInput {
777
+ address: string;
778
+ method: 'exportSeedPhrase';
826
779
  /**
827
- * A hex-encoded string prefixed with '0x'.
780
+ * Input for exporting a wallet (private key or seed phrase) with HPKE encryption.
828
781
  */
829
- hash: Hex;
782
+ params: SeedPhraseExportInput;
830
783
  }
831
784
  /**
832
- * Signs a raw hash on the secp256k1 curve.
785
+ * Response to the `exportSeedPhrase` RPC.
833
786
  */
834
- export interface EthereumSecp256k1SignRpcInput {
835
- method: 'secp256k1_sign';
787
+ export interface ExportSeedPhraseRpcResponse {
836
788
  /**
837
- * Parameters for the EVM `secp256k1_sign` RPC.
789
+ * Response containing HPKE-encrypted wallet data (private key or seed phrase).
838
790
  */
839
- params: EthereumSecp256k1SignRpcInputParams;
840
- address?: string;
841
- chain_type?: 'ethereum';
842
- wallet_id?: string;
791
+ data: SeedPhraseExportResponse;
792
+ method: 'exportSeedPhrase';
843
793
  }
844
794
  /**
845
- * Parameters for the EVM `eth_sign7702Authorization` RPC.
795
+ * The export type. 'display' is for showing the key to the user in the UI,
796
+ * 'client' is for exporting to the client application.
846
797
  */
847
- export interface EthereumSign7702AuthorizationRpcInputParams {
848
- /**
849
- * A quantity value that can be either a hex string starting with '0x' or a
850
- * non-negative integer.
851
- */
852
- chain_id: Quantity;
853
- contract: string;
854
- executor?: 'self';
855
- /**
856
- * A quantity value that can be either a hex string starting with '0x' or a
857
- * non-negative integer.
858
- */
859
- nonce?: Quantity;
860
- }
798
+ export type ExportType = 'display' | 'client';
861
799
  /**
862
- * Signs an EIP-7702 authorization.
800
+ * The wallet chain types that are not first class chains.
863
801
  */
864
- export interface EthereumSign7702AuthorizationRpcInput {
865
- method: 'eth_sign7702Authorization';
866
- /**
867
- * Parameters for the EVM `eth_sign7702Authorization` RPC.
868
- */
869
- params: EthereumSign7702AuthorizationRpcInputParams;
870
- address?: string;
871
- chain_type?: 'ethereum';
872
- wallet_id?: string;
873
- }
802
+ export type ExtendedChainType = 'cosmos' | 'stellar' | 'sui' | 'aptos' | 'movement' | 'tron' | 'bitcoin-segwit' | 'bitcoin-taproot' | 'pearl' | 'near' | 'ton' | 'starknet' | 'spark';
874
803
  /**
875
- * Parameters for the EVM `eth_signUserOperation` RPC.
804
+ * The wallet chain types that offer first class support.
876
805
  */
877
- export interface EthereumSignUserOperationRpcInputParams {
878
- /**
879
- * A quantity value that can be either a hex string starting with '0x' or a
880
- * non-negative integer.
881
- */
882
- chain_id: Quantity;
883
- contract: string;
884
- /**
885
- * An ERC-4337 user operation.
886
- */
887
- user_operation: UserOperationInput;
888
- }
806
+ export type FirstClassChainType = 'ethereum' | 'solana';
889
807
  /**
890
- * Executes an RPC method to hash and sign a UserOperation.
808
+ * Request body for looking up a wallet by its blockchain address.
891
809
  */
892
- export interface EthereumSignUserOperationRpcInput {
893
- method: 'eth_signUserOperation';
810
+ export interface GetByWalletAddressRequestBody {
894
811
  /**
895
- * Parameters for the EVM `eth_signUserOperation` RPC.
812
+ * A blockchain wallet address (Ethereum or Solana).
896
813
  */
897
- params: EthereumSignUserOperationRpcInputParams;
898
- address?: string;
899
- chain_type?: 'ethereum';
900
- wallet_id?: string;
814
+ address: Address;
901
815
  }
902
816
  /**
903
- * A single call within a batched wallet_sendCalls request.
817
+ * The input for HD wallets.
904
818
  */
905
- export interface EthereumSendCallsCall {
906
- to: string;
819
+ export interface HDInitInput {
907
820
  /**
908
- * A hex-encoded string prefixed with '0x'.
821
+ * The address of the wallet to import.
909
822
  */
910
- data?: Hex;
823
+ address: string;
911
824
  /**
912
- * A quantity value that can be either a hex string starting with '0x' or a
913
- * non-negative integer.
914
- */
915
- value?: Quantity;
825
+ * The chain type of the wallet to import. Currently supports `ethereum` and
826
+ * `solana`.
827
+ */
828
+ chain_type: WalletImportSupportedChains;
829
+ /**
830
+ * The encryption type of the wallet to import. Currently only supports `HPKE`.
831
+ */
832
+ encryption_type: HpkeEncryption;
833
+ /**
834
+ * The entropy type of the wallet to import.
835
+ */
836
+ entropy_type: 'hd';
837
+ /**
838
+ * The index of the wallet to import.
839
+ */
840
+ index: number;
916
841
  }
917
842
  /**
918
- * Parameters for the `wallet_sendCalls` RPC.
843
+ * A BIP-32 hierarchical deterministic wallet derivation path.
919
844
  */
920
- export interface EthereumSendCallsRpcInputParams {
921
- calls: Array<EthereumSendCallsCall>;
922
- }
845
+ export type HDPath = string;
923
846
  /**
924
- * Executes the `wallet_sendCalls` RPC (EIP-5792) to batch multiple calls into a
925
- * single atomic transaction.
847
+ * The submission input for importing an HD wallet.
926
848
  */
927
- export interface EthereumSendCallsRpcInput {
849
+ export interface HDSubmitInput {
928
850
  /**
929
- * A valid CAIP-2 chain ID (e.g. 'eip155:1').
851
+ * The address of the wallet to import.
930
852
  */
931
- caip2: AppsAPI.Caip2;
932
- method: 'wallet_sendCalls';
853
+ address: string;
933
854
  /**
934
- * Parameters for the `wallet_sendCalls` RPC.
855
+ * The chain type of the wallet to import. Currently supports `ethereum` and
856
+ * `solana`.
935
857
  */
936
- params: EthereumSendCallsRpcInputParams;
937
- address?: string;
938
- chain_type?: 'ethereum';
939
- sponsor?: boolean;
940
- wallet_id?: string;
858
+ chain_type: WalletImportSupportedChains;
859
+ /**
860
+ * The encrypted entropy of the wallet to import.
861
+ */
862
+ ciphertext: string;
863
+ /**
864
+ * The base64-encoded encapsulated key that was generated during encryption, for
865
+ * use during decryption inside the TEE.
866
+ */
867
+ encapsulated_key: string;
868
+ /**
869
+ * The encryption type of the wallet to import. Currently only supports `HPKE`.
870
+ */
871
+ encryption_type: HpkeEncryption;
872
+ /**
873
+ * The entropy type of the wallet to import.
874
+ */
875
+ entropy_type: 'hd';
876
+ /**
877
+ * The index of the wallet to import.
878
+ */
879
+ index: number;
880
+ /**
881
+ * Optional HPKE configuration for wallet import decryption. These parameters allow
882
+ * importing wallets encrypted by external providers that use different HPKE
883
+ * configurations.
884
+ */
885
+ hpke_config?: HpkeImportConfig;
941
886
  }
942
887
  /**
943
- * Request body for Ethereum wallet RPC operations, discriminated by method.
888
+ * The AEAD algorithm used for HPKE encryption.
944
889
  */
945
- export type EthereumRpcInput = EthereumSignTransactionRpcInput | EthereumSendTransactionRpcInput | EthereumPersonalSignRpcInput | EthereumSignTypedDataRpcInput | EthereumSecp256k1SignRpcInput | EthereumSign7702AuthorizationRpcInput | EthereumSignUserOperationRpcInput | EthereumSendCallsRpcInput;
890
+ export type HpkeAeadAlgorithm = 'CHACHA20_POLY1305' | 'AES_GCM256';
946
891
  /**
947
- * Data returned by the EVM `personal_sign` RPC.
892
+ * The encryption type of the wallet to import. Currently only supports `HPKE`.
948
893
  */
949
- export interface EthereumPersonalSignRpcResponseData {
950
- encoding: 'hex';
951
- signature: string;
952
- }
894
+ export type HpkeEncryption = 'HPKE';
953
895
  /**
954
- * Response to the EVM `personal_sign` RPC.
896
+ * Optional HPKE configuration for wallet import decryption. These parameters allow
897
+ * importing wallets encrypted by external providers that use different HPKE
898
+ * configurations.
955
899
  */
956
- export interface EthereumPersonalSignRpcResponse {
900
+ export interface HpkeImportConfig {
957
901
  /**
958
- * Data returned by the EVM `personal_sign` RPC.
902
+ * Additional Authenticated Data (AAD) used during encryption. Should be
903
+ * base64-encoded bytes.
959
904
  */
960
- data: EthereumPersonalSignRpcResponseData;
961
- method: 'personal_sign';
905
+ aad?: string;
906
+ /**
907
+ * The AEAD algorithm used for HPKE encryption.
908
+ */
909
+ aead_algorithm?: HpkeAeadAlgorithm;
910
+ /**
911
+ * Application-specific context information (INFO) used during HPKE encryption.
912
+ * Should be base64-encoded bytes.
913
+ */
914
+ info?: string;
962
915
  }
963
916
  /**
964
- * Data returned by the EVM `eth_signTransaction` RPC.
917
+ * A hex-encoded string prefixed with '0x'.
965
918
  */
966
- export interface EthereumSignTransactionRpcResponseData {
967
- encoding: 'rlp';
968
- signed_transaction: string;
969
- }
919
+ export type Hex = string;
970
920
  /**
971
- * Response to the EVM `eth_signTransaction` RPC.
921
+ * Source for a transfer identified by a named asset (e.g. "usdc", "eth"). Use this
922
+ * variant for first-class assets maintained by Privy.
972
923
  */
973
- export interface EthereumSignTransactionRpcResponse {
924
+ export interface NamedTokenTransferSource {
974
925
  /**
975
- * Data returned by the EVM `eth_signTransaction` RPC.
926
+ * Amount as a decimal string in the token's standard unit (e.g. "1.5" for 1.5
927
+ * USDC, "0.01" for 0.01 ETH). Not in the smallest on-chain unit (wei, lamports,
928
+ * etc.).
976
929
  */
977
- data: EthereumSignTransactionRpcResponseData;
978
- method: 'eth_signTransaction';
979
- }
980
- /**
981
- * Data returned by the EVM `eth_sendTransaction` RPC.
982
- */
983
- export interface EthereumSendTransactionRpcResponseData {
930
+ amount: string;
984
931
  /**
985
- * A valid CAIP-2 chain ID (e.g. 'eip155:1').
932
+ * The asset to transfer. Supported: 'usdc', 'usdb', 'usdt' (stablecoins), 'eth'
933
+ * (native Ethereum), 'sol' (native Solana).
986
934
  */
987
- caip2: AppsAPI.Caip2;
988
- hash: string;
989
- reference_id?: string | null;
990
- transaction_id?: string;
935
+ asset: string;
991
936
  /**
992
- * An unsigned Ethereum transaction object.
937
+ * The blockchain network on which to perform the transfer. Supported chains
938
+ * include: 'ethereum', 'base', 'arbitrum', 'polygon', 'solana', and their
939
+ * respective testnets.
993
940
  */
994
- transaction_request?: UnsignedEthereumTransaction;
995
- user_operation_hash?: string;
941
+ chain: string;
996
942
  }
997
943
  /**
998
- * Response to the EVM `eth_sendTransaction` RPC.
944
+ * A Spark token output with its previous transaction data.
999
945
  */
1000
- export interface EthereumSendTransactionRpcResponse {
946
+ export interface OutputWithPreviousTransactionData {
947
+ previous_transaction_hash: string;
948
+ previous_transaction_vout: number;
1001
949
  /**
1002
- * Data returned by the EVM `eth_sendTransaction` RPC.
950
+ * A Spark token output.
1003
951
  */
1004
- data: EthereumSendTransactionRpcResponseData;
1005
- method: 'eth_sendTransaction';
952
+ output?: TokenOutput;
1006
953
  }
1007
954
  /**
1008
- * Data returned by the EVM `eth_signTypedData_v4` RPC.
955
+ * An optional list of up to one policy ID to enforce on the wallet.
1009
956
  */
1010
- export interface EthereumSignTypedDataRpcResponseData {
1011
- encoding: 'hex';
1012
- signature: string;
1013
- }
957
+ export type PolicyInput = Array<string>;
1014
958
  /**
1015
- * Response to the EVM `eth_signTypedData_v4` RPC.
959
+ * Input for exporting a wallet (private key or seed phrase) with HPKE encryption.
1016
960
  */
1017
- export interface EthereumSignTypedDataRpcResponse {
961
+ export interface PrivateKeyExportInput {
1018
962
  /**
1019
- * Data returned by the EVM `eth_signTypedData_v4` RPC.
963
+ * The encryption type of the wallet to import. Currently only supports `HPKE`.
1020
964
  */
1021
- data: EthereumSignTypedDataRpcResponseData;
1022
- method: 'eth_signTypedData_v4';
1023
- }
1024
- /**
1025
- * Data returned by the EVM `secp256k1_sign` RPC.
1026
- */
1027
- export interface EthereumSecp256k1SignRpcResponseData {
1028
- encoding: 'hex';
965
+ encryption_type: HpkeEncryption;
1029
966
  /**
1030
- * A hex-encoded string prefixed with '0x'.
967
+ * The recipient public key for HPKE encryption, in PEM or DER (base64-encoded)
968
+ * format.
1031
969
  */
1032
- signature: Hex;
1033
- }
1034
- /**
1035
- * Response to the EVM `secp256k1_sign` RPC.
1036
- */
1037
- export interface EthereumSecp256k1SignRpcResponse {
970
+ recipient_public_key: RecipientPublicKey;
971
+ export_seed_phrase?: boolean;
1038
972
  /**
1039
- * Data returned by the EVM `secp256k1_sign` RPC.
973
+ * The export type. 'display' is for showing the key to the user in the UI,
974
+ * 'client' is for exporting to the client application.
1040
975
  */
1041
- data: EthereumSecp256k1SignRpcResponseData;
1042
- method: 'secp256k1_sign';
976
+ export_type?: ExportType;
1043
977
  }
1044
978
  /**
1045
- * Data returned by the EVM `eth_sign7702Authorization` RPC.
979
+ * Response containing HPKE-encrypted wallet data (private key or seed phrase).
1046
980
  */
1047
- export interface EthereumSign7702AuthorizationRpcResponseData {
981
+ export interface PrivateKeyExportResponse {
982
+ ciphertext: string;
983
+ encapsulated_key: string;
1048
984
  /**
1049
- * A signed EIP-7702 authorization that delegates code execution to a contract
1050
- * address.
985
+ * The encryption type of the wallet to import. Currently only supports `HPKE`.
1051
986
  */
1052
- authorization: EthereumSign7702Authorization;
987
+ encryption_type: HpkeEncryption;
1053
988
  }
1054
989
  /**
1055
- * Response to the EVM `eth_sign7702Authorization` RPC.
990
+ * The input for private key wallets.
1056
991
  */
1057
- export interface EthereumSign7702AuthorizationRpcResponse {
992
+ export interface PrivateKeyInitInput {
1058
993
  /**
1059
- * Data returned by the EVM `eth_sign7702Authorization` RPC.
994
+ * The address of the wallet to import.
1060
995
  */
1061
- data: EthereumSign7702AuthorizationRpcResponseData;
1062
- method: 'eth_sign7702Authorization';
1063
- }
1064
- /**
1065
- * Data returned by the EVM `eth_signUserOperation` RPC.
1066
- */
1067
- export interface EthereumSignUserOperationRpcResponseData {
1068
- encoding: 'hex';
1069
- signature: string;
1070
- }
1071
- /**
1072
- * Response to the EVM `eth_signUserOperation` RPC.
1073
- */
1074
- export interface EthereumSignUserOperationRpcResponse {
996
+ address: string;
1075
997
  /**
1076
- * Data returned by the EVM `eth_signUserOperation` RPC.
998
+ * The chain type of the wallet to import. Currently supports `ethereum` and
999
+ * `solana`.
1077
1000
  */
1078
- data: EthereumSignUserOperationRpcResponseData;
1079
- method: 'eth_signUserOperation';
1080
- }
1081
- /**
1082
- * Data returned by the `wallet_sendCalls` RPC.
1083
- */
1084
- export interface EthereumSendCallsRpcResponseData {
1001
+ chain_type: WalletImportSupportedChains;
1085
1002
  /**
1086
- * A valid CAIP-2 chain ID (e.g. 'eip155:1').
1003
+ * The encryption type of the wallet to import. Currently only supports `HPKE`.
1087
1004
  */
1088
- caip2: AppsAPI.Caip2;
1089
- transaction_id: string;
1005
+ encryption_type: HpkeEncryption;
1006
+ entropy_type: 'private-key';
1090
1007
  }
1091
1008
  /**
1092
- * Response to the `wallet_sendCalls` RPC.
1009
+ * The submission input for importing a private key wallet.
1093
1010
  */
1094
- export interface EthereumSendCallsRpcResponse {
1011
+ export interface PrivateKeySubmitInput {
1095
1012
  /**
1096
- * Data returned by the `wallet_sendCalls` RPC.
1013
+ * The address of the wallet to import.
1097
1014
  */
1098
- data: EthereumSendCallsRpcResponseData;
1099
- method: 'wallet_sendCalls';
1100
- }
1101
- /**
1102
- * Response body for Ethereum wallet RPC operations, discriminated by method.
1103
- */
1104
- export type EthereumRpcResponse = EthereumPersonalSignRpcResponse | EthereumSignTypedDataRpcResponse | EthereumSignTransactionRpcResponse | EthereumSendTransactionRpcResponse | EthereumSignUserOperationRpcResponse | EthereumSign7702AuthorizationRpcResponse | EthereumSecp256k1SignRpcResponse | EthereumSendCallsRpcResponse;
1105
- /**
1106
- * Parameters for the SVM `signTransaction` RPC.
1107
- */
1108
- export interface SolanaSignTransactionRpcInputParams {
1109
- encoding: 'base64';
1110
- transaction: string;
1111
- }
1112
- /**
1113
- * Executes the SVM `signTransaction` RPC to sign a transaction.
1015
+ address: string;
1016
+ /**
1017
+ * The chain type of the wallet to import. Currently supports `ethereum` and
1018
+ * `solana`.
1019
+ */
1020
+ chain_type: WalletImportSupportedChains;
1021
+ /**
1022
+ * The encrypted entropy of the wallet to import.
1023
+ */
1024
+ ciphertext: string;
1025
+ /**
1026
+ * The base64-encoded encapsulated key that was generated during encryption, for
1027
+ * use during decryption inside the TEE.
1028
+ */
1029
+ encapsulated_key: string;
1030
+ /**
1031
+ * The encryption type of the wallet to import. Currently only supports `HPKE`.
1032
+ */
1033
+ encryption_type: HpkeEncryption;
1034
+ entropy_type: 'private-key';
1035
+ /**
1036
+ * Optional HPKE configuration for wallet import decryption. These parameters allow
1037
+ * importing wallets encrypted by external providers that use different HPKE
1038
+ * configurations.
1039
+ */
1040
+ hpke_config?: HpkeImportConfig;
1041
+ }
1042
+ /**
1043
+ * A quantity value that can be either a hex string starting with '0x' or a
1044
+ * non-negative integer.
1114
1045
  */
1115
- export interface SolanaSignTransactionRpcInput {
1116
- method: 'signTransaction';
1046
+ export type Quantity = Hex | number;
1047
+ /**
1048
+ * Encoding scheme for bytes in the `raw_sign` RPC.
1049
+ */
1050
+ export type RawSignBytesEncoding = 'utf-8' | 'hex' | 'base64';
1051
+ /**
1052
+ * Hash function for bytes in the `raw_sign` RPC.
1053
+ */
1054
+ export type RawSignBytesHashFunction = 'keccak256' | 'sha256' | 'blake2b256';
1055
+ /**
1056
+ * Parameters for hashing and signing bytes with the `raw_sign` RPC.
1057
+ */
1058
+ export interface RawSignBytesParams {
1117
1059
  /**
1118
- * Parameters for the SVM `signTransaction` RPC.
1060
+ * The bytes to hash and sign.
1119
1061
  */
1120
- params: SolanaSignTransactionRpcInputParams;
1121
- address?: string;
1122
- chain_type?: 'solana';
1123
- wallet_id?: string;
1062
+ bytes: string;
1063
+ /**
1064
+ * Encoding scheme for bytes in the `raw_sign` RPC.
1065
+ */
1066
+ encoding: RawSignBytesEncoding;
1067
+ /**
1068
+ * Hash function for bytes in the `raw_sign` RPC.
1069
+ */
1070
+ hash_function: RawSignBytesHashFunction;
1124
1071
  }
1125
1072
  /**
1126
- * Parameters for the SVM `signAndSendTransaction` RPC.
1073
+ * Parameters for signing a pre-computed hash with the `raw_sign` RPC.
1127
1074
  */
1128
- export interface SolanaSignAndSendTransactionRpcInputParams {
1129
- encoding: 'base64';
1130
- transaction: string;
1075
+ export interface RawSignHashParams {
1076
+ /**
1077
+ * A hex-encoded string prefixed with '0x'.
1078
+ */
1079
+ hash: Hex;
1080
+ }
1081
+ /**
1082
+ * Provide either `hash` (to sign a pre-computed hash) OR `bytes`, `encoding`, and
1083
+ * `hash_function` (to hash and then sign). These options are mutually exclusive.
1084
+ */
1085
+ export interface RawSignInput {
1086
+ /**
1087
+ * Parameters for the `raw_sign` RPC.
1088
+ */
1089
+ params: RawSignInputParams;
1090
+ }
1091
+ /**
1092
+ * Parameters for the `raw_sign` RPC.
1093
+ */
1094
+ export type RawSignInputParams = RawSignHashParams | RawSignBytesParams;
1095
+ /**
1096
+ * Response to the `raw_sign` RPC.
1097
+ */
1098
+ export interface RawSignResponse {
1099
+ /**
1100
+ * Data returned by the `raw_sign` RPC.
1101
+ */
1102
+ data: RawSignResponseData;
1103
+ method: 'raw_sign';
1104
+ }
1105
+ /**
1106
+ * Data returned by the `raw_sign` RPC.
1107
+ */
1108
+ export interface RawSignResponseData {
1109
+ encoding: 'hex';
1110
+ /**
1111
+ * A hex-encoded string prefixed with '0x'.
1112
+ */
1113
+ signature: Hex;
1114
+ }
1115
+ /**
1116
+ * The recipient public key for HPKE encryption, in PEM or DER (base64-encoded)
1117
+ * format.
1118
+ */
1119
+ export type RecipientPublicKey = string;
1120
+ /**
1121
+ * Input for exporting a wallet (private key or seed phrase) with HPKE encryption.
1122
+ */
1123
+ export interface SeedPhraseExportInput {
1124
+ /**
1125
+ * The encryption type of the wallet to import. Currently only supports `HPKE`.
1126
+ */
1127
+ encryption_type: HpkeEncryption;
1128
+ /**
1129
+ * The recipient public key for HPKE encryption, in PEM or DER (base64-encoded)
1130
+ * format.
1131
+ */
1132
+ recipient_public_key: RecipientPublicKey;
1133
+ export_seed_phrase?: boolean;
1134
+ /**
1135
+ * The export type. 'display' is for showing the key to the user in the UI,
1136
+ * 'client' is for exporting to the client application.
1137
+ */
1138
+ export_type?: ExportType;
1139
+ }
1140
+ /**
1141
+ * Response containing HPKE-encrypted wallet data (private key or seed phrase).
1142
+ */
1143
+ export interface SeedPhraseExportResponse {
1144
+ ciphertext: string;
1145
+ encapsulated_key: string;
1146
+ /**
1147
+ * The encryption type of the wallet to import. Currently only supports `HPKE`.
1148
+ */
1149
+ encryption_type: HpkeEncryption;
1131
1150
  }
1151
+ /**
1152
+ * The signing algorithm used by the wallet.
1153
+ */
1154
+ export type SigningAlgorithm = 'ECDSA' | 'EdDSA' | 'Schnorr';
1155
+ /**
1156
+ * Request body for Solana wallet RPC operations, discriminated by method.
1157
+ */
1158
+ export type SolanaRpcInput = SolanaSignTransactionRpcInput | SolanaSignAndSendTransactionRpcInput | SolanaSignMessageRpcInput;
1159
+ /**
1160
+ * Response body for Solana wallet RPC operations, discriminated by method.
1161
+ */
1162
+ export type SolanaRpcResponse = SolanaSignMessageRpcResponse | SolanaSignTransactionRpcResponse | SolanaSignAndSendTransactionRpcResponse;
1132
1163
  /**
1133
1164
  * Executes the SVM `signAndSendTransaction` RPC to sign and broadcast a
1134
1165
  * transaction.
@@ -1150,45 +1181,21 @@ export interface SolanaSignAndSendTransactionRpcInput {
1150
1181
  wallet_id?: string;
1151
1182
  }
1152
1183
  /**
1153
- * Parameters for the SVM `signMessage` RPC.
1154
- */
1155
- export interface SolanaSignMessageRpcInputParams {
1156
- encoding: 'base64';
1157
- message: string;
1158
- }
1159
- /**
1160
- * Executes the SVM `signMessage` RPC to sign a message.
1161
- */
1162
- export interface SolanaSignMessageRpcInput {
1163
- method: 'signMessage';
1164
- /**
1165
- * Parameters for the SVM `signMessage` RPC.
1166
- */
1167
- params: SolanaSignMessageRpcInputParams;
1168
- address?: string;
1169
- chain_type?: 'solana';
1170
- wallet_id?: string;
1171
- }
1172
- /**
1173
- * Request body for Solana wallet RPC operations, discriminated by method.
1174
- */
1175
- export type SolanaRpcInput = SolanaSignTransactionRpcInput | SolanaSignAndSendTransactionRpcInput | SolanaSignMessageRpcInput;
1176
- /**
1177
- * Data returned by the SVM `signTransaction` RPC.
1184
+ * Parameters for the SVM `signAndSendTransaction` RPC.
1178
1185
  */
1179
- export interface SolanaSignTransactionRpcResponseData {
1186
+ export interface SolanaSignAndSendTransactionRpcInputParams {
1180
1187
  encoding: 'base64';
1181
- signed_transaction: string;
1188
+ transaction: string;
1182
1189
  }
1183
1190
  /**
1184
- * Response to the SVM `signTransaction` RPC.
1191
+ * Response to the SVM `signAndSendTransaction` RPC.
1185
1192
  */
1186
- export interface SolanaSignTransactionRpcResponse {
1193
+ export interface SolanaSignAndSendTransactionRpcResponse {
1187
1194
  /**
1188
- * Data returned by the SVM `signTransaction` RPC.
1195
+ * Data returned by the SVM `signAndSendTransaction` RPC.
1189
1196
  */
1190
- data: SolanaSignTransactionRpcResponseData;
1191
- method: 'signTransaction';
1197
+ data: SolanaSignAndSendTransactionRpcResponseData;
1198
+ method: 'signAndSendTransaction';
1192
1199
  }
1193
1200
  /**
1194
1201
  * Data returned by the SVM `signAndSendTransaction` RPC.
@@ -1203,21 +1210,24 @@ export interface SolanaSignAndSendTransactionRpcResponseData {
1203
1210
  transaction_id?: string;
1204
1211
  }
1205
1212
  /**
1206
- * Response to the SVM `signAndSendTransaction` RPC.
1213
+ * Executes the SVM `signMessage` RPC to sign a message.
1207
1214
  */
1208
- export interface SolanaSignAndSendTransactionRpcResponse {
1215
+ export interface SolanaSignMessageRpcInput {
1216
+ method: 'signMessage';
1209
1217
  /**
1210
- * Data returned by the SVM `signAndSendTransaction` RPC.
1218
+ * Parameters for the SVM `signMessage` RPC.
1211
1219
  */
1212
- data: SolanaSignAndSendTransactionRpcResponseData;
1213
- method: 'signAndSendTransaction';
1220
+ params: SolanaSignMessageRpcInputParams;
1221
+ address?: string;
1222
+ chain_type?: 'solana';
1223
+ wallet_id?: string;
1214
1224
  }
1215
1225
  /**
1216
- * Data returned by the SVM `signMessage` RPC.
1226
+ * Parameters for the SVM `signMessage` RPC.
1217
1227
  */
1218
- export interface SolanaSignMessageRpcResponseData {
1228
+ export interface SolanaSignMessageRpcInputParams {
1219
1229
  encoding: 'base64';
1220
- signature: string;
1230
+ message: string;
1221
1231
  }
1222
1232
  /**
1223
1233
  * Response to the SVM `signMessage` RPC.
@@ -1230,97 +1240,53 @@ export interface SolanaSignMessageRpcResponse {
1230
1240
  method: 'signMessage';
1231
1241
  }
1232
1242
  /**
1233
- * Response body for Solana wallet RPC operations, discriminated by method.
1243
+ * Data returned by the SVM `signMessage` RPC.
1234
1244
  */
1235
- export type SolanaRpcResponse = SolanaSignMessageRpcResponse | SolanaSignTransactionRpcResponse | SolanaSignAndSendTransactionRpcResponse;
1245
+ export interface SolanaSignMessageRpcResponseData {
1246
+ encoding: 'base64';
1247
+ signature: string;
1248
+ }
1236
1249
  /**
1237
- * The Spark network.
1250
+ * Executes the SVM `signTransaction` RPC to sign a transaction.
1238
1251
  */
1239
- export type SparkNetwork = 'MAINNET' | 'REGTEST';
1252
+ export interface SolanaSignTransactionRpcInput {
1253
+ method: 'signTransaction';
1254
+ /**
1255
+ * Parameters for the SVM `signTransaction` RPC.
1256
+ */
1257
+ params: SolanaSignTransactionRpcInputParams;
1258
+ address?: string;
1259
+ chain_type?: 'solana';
1260
+ wallet_id?: string;
1261
+ }
1240
1262
  /**
1241
- * A Spark signing keyshare.
1263
+ * Parameters for the SVM `signTransaction` RPC.
1242
1264
  */
1243
- export interface SparkSigningKeyshare {
1244
- owner_identifiers: Array<string>;
1245
- public_key: string;
1246
- public_shares: {
1247
- [key: string]: string;
1248
- };
1249
- threshold: number;
1250
- updated_time: string;
1265
+ export interface SolanaSignTransactionRpcInputParams {
1266
+ encoding: 'base64';
1267
+ transaction: string;
1251
1268
  }
1252
1269
  /**
1253
- * A Spark wallet leaf node.
1270
+ * Response to the SVM `signTransaction` RPC.
1254
1271
  */
1255
- export interface SparkWalletLeaf {
1256
- id: string;
1272
+ export interface SolanaSignTransactionRpcResponse {
1257
1273
  /**
1258
- * The Spark network.
1274
+ * Data returned by the SVM `signTransaction` RPC.
1259
1275
  */
1260
- network: SparkNetwork;
1261
- node_tx: string;
1262
- owner_identity_public_key: string;
1263
- refund_tx: string;
1264
- status: string;
1265
- tree_id: string;
1266
- value: number;
1267
- verifying_public_key: string;
1268
- vout: number;
1269
- parent_node_id?: string;
1270
- /**
1271
- * A Spark signing keyshare.
1272
- */
1273
- signing_keyshare?: SparkSigningKeyshare;
1274
- }
1275
- /**
1276
- * A Spark transfer leaf.
1277
- */
1278
- export interface SparkTransferLeaf {
1279
- intermediate_refund_tx: string;
1280
- secret_cipher: string;
1281
- signature: string;
1282
- /**
1283
- * A Spark wallet leaf node.
1284
- */
1285
- leaf?: SparkWalletLeaf;
1286
- }
1287
- /**
1288
- * A Spark transfer.
1289
- */
1290
- export interface SparkTransfer {
1291
- id: string;
1292
- leaves: Array<SparkTransferLeaf>;
1293
- receiver_identity_public_key: string;
1294
- sender_identity_public_key: string;
1295
- status: string;
1296
- total_value: number;
1297
- transfer_direction: string;
1298
- type: string;
1299
- created_time?: string;
1300
- expiry_time?: string;
1301
- updated_time?: string;
1276
+ data: SolanaSignTransactionRpcResponseData;
1277
+ method: 'signTransaction';
1302
1278
  }
1303
1279
  /**
1304
- * Metadata for a Spark user token.
1280
+ * Data returned by the SVM `signTransaction` RPC.
1305
1281
  */
1306
- export interface SparkUserTokenMetadata {
1307
- decimals: number;
1308
- max_supply: string;
1309
- raw_token_identifier: string;
1310
- token_name: string;
1311
- token_public_key: string;
1312
- token_ticker: string;
1282
+ export interface SolanaSignTransactionRpcResponseData {
1283
+ encoding: 'base64';
1284
+ signed_transaction: string;
1313
1285
  }
1314
1286
  /**
1315
- * Balance of a Spark token.
1287
+ * The derivation strategy used for Solana wallets.
1316
1288
  */
1317
- export interface SparkTokenBalance {
1318
- balance: string;
1319
- /**
1320
- * Metadata for a Spark user token.
1321
- */
1322
- token_metadata: SparkUserTokenMetadata;
1323
- }
1289
+ export type SolanaWalletDerivationStrategy = 'ENTROPY_TO_SEED' | 'ENTROPY_TO_MNEMONIC_TO_SEED';
1324
1290
  /**
1325
1291
  * The balance of a Spark wallet.
1326
1292
  */
@@ -1331,90 +1297,78 @@ export interface SparkBalance {
1331
1297
  };
1332
1298
  }
1333
1299
  /**
1334
- * A Spark token output.
1300
+ * Claims a static deposit into the Spark wallet.
1335
1301
  */
1336
- export interface TokenOutput {
1337
- owner_public_key: string;
1338
- token_amount: string;
1339
- id?: string;
1340
- revocation_commitment?: string;
1341
- token_identifier?: string;
1342
- token_public_key?: string;
1343
- withdraw_bond_sats?: number;
1344
- withdraw_relative_block_locktime?: number;
1302
+ export interface SparkClaimStaticDepositRpcInput {
1303
+ method: 'claimStaticDeposit';
1304
+ /**
1305
+ * Parameters for the Spark `claimStaticDeposit` RPC.
1306
+ */
1307
+ params: SparkClaimStaticDepositRpcInputParams;
1308
+ /**
1309
+ * The Spark network.
1310
+ */
1311
+ network?: SparkNetwork;
1345
1312
  }
1346
1313
  /**
1347
- * A Spark token output with its previous transaction data.
1314
+ * Parameters for the Spark `claimStaticDeposit` RPC.
1348
1315
  */
1349
- export interface OutputWithPreviousTransactionData {
1350
- previous_transaction_hash: string;
1351
- previous_transaction_vout: number;
1352
- /**
1353
- * A Spark token output.
1354
- */
1355
- output?: TokenOutput;
1316
+ export interface SparkClaimStaticDepositRpcInputParams {
1317
+ credit_amount_sats: number;
1318
+ signature: string;
1319
+ transaction_id: string;
1320
+ output_index?: number;
1356
1321
  }
1357
1322
  /**
1358
- * The fee for a Spark Lightning payment.
1323
+ * Response to the Spark `claimStaticDeposit` RPC.
1359
1324
  */
1360
- export interface SparkLightningFee {
1361
- original_unit: string;
1362
- original_value: number;
1325
+ export interface SparkClaimStaticDepositRpcResponse {
1326
+ method: 'claimStaticDeposit';
1327
+ /**
1328
+ * Data returned by the Spark `claimStaticDeposit` RPC.
1329
+ */
1330
+ data?: SparkClaimStaticDepositRpcResponseData;
1363
1331
  }
1364
1332
  /**
1365
- * A Spark Lightning receive request.
1333
+ * Data returned by the Spark `claimStaticDeposit` RPC.
1366
1334
  */
1367
- export interface SparkLightningReceiveRequest {
1368
- id: string;
1369
- created_at: string;
1370
- network: string;
1371
- status: string;
1372
- typename: string;
1373
- updated_at: string;
1374
- invoice?: unknown;
1375
- payment_preimage?: string;
1376
- receiver_identity_public_key?: string;
1377
- transfer?: unknown;
1335
+ export interface SparkClaimStaticDepositRpcResponseData {
1336
+ transfer_id: string;
1378
1337
  }
1379
1338
  /**
1380
- * A Spark Lightning send request.
1339
+ * Creates a Lightning invoice for the Spark wallet.
1381
1340
  */
1382
- export interface SparkLightningSendRequest {
1383
- id: string;
1384
- created_at: string;
1385
- encoded_invoice: string;
1341
+ export interface SparkCreateLightningInvoiceRpcInput {
1342
+ method: 'createLightningInvoice';
1386
1343
  /**
1387
- * The fee for a Spark Lightning payment.
1344
+ * Parameters for the Spark `createLightningInvoice` RPC.
1388
1345
  */
1389
- fee: SparkLightningFee;
1390
- idempotency_key: string;
1391
- network: string;
1392
- status: string;
1393
- typename: string;
1394
- updated_at: string;
1395
- payment_preimage?: string;
1396
- transfer?: unknown;
1346
+ params: SparkCreateLightningInvoiceRpcInputParams;
1347
+ /**
1348
+ * The Spark network.
1349
+ */
1350
+ network?: SparkNetwork;
1397
1351
  }
1398
1352
  /**
1399
- * Parameters for the Spark `transfer` RPC.
1353
+ * Parameters for the Spark `createLightningInvoice` RPC.
1400
1354
  */
1401
- export interface SparkTransferRpcInputParams {
1355
+ export interface SparkCreateLightningInvoiceRpcInputParams {
1402
1356
  amount_sats: number;
1403
- receiver_spark_address: string;
1357
+ description_hash?: string;
1358
+ expiry_seconds?: number;
1359
+ include_spark_address?: boolean;
1360
+ memo?: string;
1361
+ receiver_identity_pubkey?: string;
1404
1362
  }
1405
1363
  /**
1406
- * Transfers satoshis to a Spark address.
1364
+ * Response to the Spark `createLightningInvoice` RPC.
1407
1365
  */
1408
- export interface SparkTransferRpcInput {
1409
- method: 'transfer';
1410
- /**
1411
- * Parameters for the Spark `transfer` RPC.
1412
- */
1413
- params: SparkTransferRpcInputParams;
1366
+ export interface SparkCreateLightningInvoiceRpcResponse {
1367
+ method: 'createLightningInvoice';
1414
1368
  /**
1415
- * The Spark network.
1369
+ * A Spark Lightning receive request.
1416
1370
  */
1417
- network?: SparkNetwork;
1371
+ data?: SparkLightningReceiveRequest;
1418
1372
  }
1419
1373
  /**
1420
1374
  * Gets the balance of the Spark wallet.
@@ -1427,41 +1381,24 @@ export interface SparkGetBalanceRpcInput {
1427
1381
  network?: SparkNetwork;
1428
1382
  }
1429
1383
  /**
1430
- * Strategy for selecting outputs in a Spark token transfer.
1431
- */
1432
- export type SparkOutputSelectionStrategy = 'SMALL_FIRST' | 'LARGE_FIRST';
1433
- /**
1434
- * Parameters for the Spark `transferTokens` RPC.
1384
+ * Response to the Spark `getBalance` RPC.
1435
1385
  */
1436
- export interface SparkTransferTokensRpcInputParams {
1437
- receiver_spark_address: string;
1438
- token_amount: number;
1439
- token_identifier: string;
1386
+ export interface SparkGetBalanceRpcResponse {
1387
+ method: 'getBalance';
1440
1388
  /**
1441
- * Strategy for selecting outputs in a Spark token transfer.
1389
+ * The balance of a Spark wallet.
1442
1390
  */
1443
- output_selection_strategy?: SparkOutputSelectionStrategy;
1444
- selected_outputs?: Array<OutputWithPreviousTransactionData>;
1391
+ data?: SparkBalance;
1445
1392
  }
1446
1393
  /**
1447
- * Transfers tokens to a Spark address.
1394
+ * Gets a quote for claiming a static deposit.
1448
1395
  */
1449
- export interface SparkTransferTokensRpcInput {
1450
- method: 'transferTokens';
1451
- /**
1452
- * Parameters for the Spark `transferTokens` RPC.
1453
- */
1454
- params: SparkTransferTokensRpcInputParams;
1396
+ export interface SparkGetClaimStaticDepositQuoteRpcInput {
1397
+ method: 'getClaimStaticDepositQuote';
1455
1398
  /**
1456
- * The Spark network.
1399
+ * Parameters for the Spark `getClaimStaticDepositQuote` RPC.
1457
1400
  */
1458
- network?: SparkNetwork;
1459
- }
1460
- /**
1461
- * Gets a static deposit address for the Spark wallet.
1462
- */
1463
- export interface SparkGetStaticDepositAddressRpcInput {
1464
- method: 'getStaticDepositAddress';
1401
+ params: SparkGetClaimStaticDepositQuoteRpcInputParams;
1465
1402
  /**
1466
1403
  * The Spark network.
1467
1404
  */
@@ -1475,62 +1412,109 @@ export interface SparkGetClaimStaticDepositQuoteRpcInputParams {
1475
1412
  output_index?: number;
1476
1413
  }
1477
1414
  /**
1478
- * Gets a quote for claiming a static deposit.
1415
+ * Response to the Spark `getClaimStaticDepositQuote` RPC.
1479
1416
  */
1480
- export interface SparkGetClaimStaticDepositQuoteRpcInput {
1417
+ export interface SparkGetClaimStaticDepositQuoteRpcResponse {
1481
1418
  method: 'getClaimStaticDepositQuote';
1482
1419
  /**
1483
- * Parameters for the Spark `getClaimStaticDepositQuote` RPC.
1484
- */
1485
- params: SparkGetClaimStaticDepositQuoteRpcInputParams;
1486
- /**
1487
- * The Spark network.
1420
+ * Data returned by the Spark `getClaimStaticDepositQuote` RPC.
1488
1421
  */
1489
- network?: SparkNetwork;
1422
+ data?: SparkGetClaimStaticDepositQuoteRpcResponseData;
1490
1423
  }
1491
1424
  /**
1492
- * Parameters for the Spark `claimStaticDeposit` RPC.
1425
+ * Data returned by the Spark `getClaimStaticDepositQuote` RPC.
1493
1426
  */
1494
- export interface SparkClaimStaticDepositRpcInputParams {
1427
+ export interface SparkGetClaimStaticDepositQuoteRpcResponseData {
1495
1428
  credit_amount_sats: number;
1429
+ network: string;
1430
+ output_index: number;
1496
1431
  signature: string;
1497
1432
  transaction_id: string;
1498
- output_index?: number;
1499
1433
  }
1500
1434
  /**
1501
- * Claims a static deposit into the Spark wallet.
1435
+ * Gets a static deposit address for the Spark wallet.
1502
1436
  */
1503
- export interface SparkClaimStaticDepositRpcInput {
1504
- method: 'claimStaticDeposit';
1505
- /**
1506
- * Parameters for the Spark `claimStaticDeposit` RPC.
1507
- */
1508
- params: SparkClaimStaticDepositRpcInputParams;
1437
+ export interface SparkGetStaticDepositAddressRpcInput {
1438
+ method: 'getStaticDepositAddress';
1509
1439
  /**
1510
1440
  * The Spark network.
1511
1441
  */
1512
1442
  network?: SparkNetwork;
1513
1443
  }
1514
1444
  /**
1515
- * Parameters for the Spark `createLightningInvoice` RPC.
1445
+ * Response to the Spark `getStaticDepositAddress` RPC.
1516
1446
  */
1517
- export interface SparkCreateLightningInvoiceRpcInputParams {
1518
- amount_sats: number;
1519
- description_hash?: string;
1520
- expiry_seconds?: number;
1521
- include_spark_address?: boolean;
1522
- memo?: string;
1523
- receiver_identity_pubkey?: string;
1447
+ export interface SparkGetStaticDepositAddressRpcResponse {
1448
+ method: 'getStaticDepositAddress';
1449
+ /**
1450
+ * Data returned by the Spark `getStaticDepositAddress` RPC.
1451
+ */
1452
+ data?: SparkGetStaticDepositAddressRpcResponseData;
1524
1453
  }
1525
1454
  /**
1526
- * Creates a Lightning invoice for the Spark wallet.
1455
+ * Data returned by the Spark `getStaticDepositAddress` RPC.
1527
1456
  */
1528
- export interface SparkCreateLightningInvoiceRpcInput {
1529
- method: 'createLightningInvoice';
1530
- /**
1531
- * Parameters for the Spark `createLightningInvoice` RPC.
1457
+ export interface SparkGetStaticDepositAddressRpcResponseData {
1458
+ address: string;
1459
+ }
1460
+ /**
1461
+ * The fee for a Spark Lightning payment.
1462
+ */
1463
+ export interface SparkLightningFee {
1464
+ original_unit: string;
1465
+ original_value: number;
1466
+ }
1467
+ /**
1468
+ * A Spark Lightning receive request.
1469
+ */
1470
+ export interface SparkLightningReceiveRequest {
1471
+ id: string;
1472
+ created_at: string;
1473
+ network: string;
1474
+ status: string;
1475
+ typename: string;
1476
+ updated_at: string;
1477
+ invoice?: unknown;
1478
+ payment_preimage?: string;
1479
+ receiver_identity_public_key?: string;
1480
+ transfer?: unknown;
1481
+ }
1482
+ /**
1483
+ * A Spark Lightning send request.
1484
+ */
1485
+ export interface SparkLightningSendRequest {
1486
+ id: string;
1487
+ created_at: string;
1488
+ encoded_invoice: string;
1489
+ /**
1490
+ * The fee for a Spark Lightning payment.
1532
1491
  */
1533
- params: SparkCreateLightningInvoiceRpcInputParams;
1492
+ fee: SparkLightningFee;
1493
+ idempotency_key: string;
1494
+ network: string;
1495
+ status: string;
1496
+ typename: string;
1497
+ updated_at: string;
1498
+ payment_preimage?: string;
1499
+ transfer?: unknown;
1500
+ }
1501
+ /**
1502
+ * The Spark network.
1503
+ */
1504
+ export type SparkNetwork = 'MAINNET' | 'REGTEST';
1505
+ /**
1506
+ * Strategy for selecting outputs in a Spark token transfer.
1507
+ */
1508
+ export type SparkOutputSelectionStrategy = 'SMALL_FIRST' | 'LARGE_FIRST';
1509
+ /**
1510
+ * Pays a Lightning invoice from the Spark wallet.
1511
+ */
1512
+ export interface SparkPayLightningInvoiceRpcInput {
1513
+ method: 'payLightningInvoice';
1514
+ /**
1515
+ * Parameters for the Spark `payLightningInvoice` RPC.
1516
+ */
1517
+ params: SparkPayLightningInvoiceRpcInputParams;
1534
1518
  /**
1535
1519
  * The Spark network.
1536
1520
  */
@@ -1546,14 +1530,32 @@ export interface SparkPayLightningInvoiceRpcInputParams {
1546
1530
  prefer_spark?: boolean;
1547
1531
  }
1548
1532
  /**
1549
- * Pays a Lightning invoice from the Spark wallet.
1533
+ * Response to the Spark `payLightningInvoice` RPC.
1550
1534
  */
1551
- export interface SparkPayLightningInvoiceRpcInput {
1535
+ export interface SparkPayLightningInvoiceRpcResponse {
1552
1536
  method: 'payLightningInvoice';
1553
1537
  /**
1554
- * Parameters for the Spark `payLightningInvoice` RPC.
1538
+ * A Spark transfer.
1555
1539
  */
1556
- params: SparkPayLightningInvoiceRpcInputParams;
1540
+ data?: SparkTransfer | SparkLightningSendRequest;
1541
+ }
1542
+ /**
1543
+ * Request body for Spark wallet RPC operations, discriminated by method.
1544
+ */
1545
+ export type SparkRpcInput = SparkTransferRpcInput | SparkGetBalanceRpcInput | SparkTransferTokensRpcInput | SparkGetStaticDepositAddressRpcInput | SparkGetClaimStaticDepositQuoteRpcInput | SparkClaimStaticDepositRpcInput | SparkCreateLightningInvoiceRpcInput | SparkPayLightningInvoiceRpcInput | SparkSignMessageWithIdentityKeyRpcInput;
1546
+ /**
1547
+ * Response body for Spark wallet RPC operations, discriminated by method.
1548
+ */
1549
+ export type SparkRpcResponse = SparkTransferRpcResponse | SparkGetBalanceRpcResponse | SparkTransferTokensRpcResponse | SparkGetStaticDepositAddressRpcResponse | SparkGetClaimStaticDepositQuoteRpcResponse | SparkClaimStaticDepositRpcResponse | SparkCreateLightningInvoiceRpcResponse | SparkPayLightningInvoiceRpcResponse | SparkSignMessageWithIdentityKeyRpcResponse;
1550
+ /**
1551
+ * Signs a message with the Spark identity key.
1552
+ */
1553
+ export interface SparkSignMessageWithIdentityKeyRpcInput {
1554
+ method: 'signMessageWithIdentityKey';
1555
+ /**
1556
+ * Parameters for the Spark `signMessageWithIdentityKey` RPC.
1557
+ */
1558
+ params: SparkSignMessageWithIdentityKeyRpcInputParams;
1557
1559
  /**
1558
1560
  * The Spark network.
1559
1561
  */
@@ -1567,23 +1569,92 @@ export interface SparkSignMessageWithIdentityKeyRpcInputParams {
1567
1569
  compact?: boolean;
1568
1570
  }
1569
1571
  /**
1570
- * Signs a message with the Spark identity key.
1572
+ * Response to the Spark `signMessageWithIdentityKey` RPC.
1571
1573
  */
1572
- export interface SparkSignMessageWithIdentityKeyRpcInput {
1574
+ export interface SparkSignMessageWithIdentityKeyRpcResponse {
1573
1575
  method: 'signMessageWithIdentityKey';
1574
1576
  /**
1575
- * Parameters for the Spark `signMessageWithIdentityKey` RPC.
1577
+ * Data returned by the Spark `signMessageWithIdentityKey` RPC.
1576
1578
  */
1577
- params: SparkSignMessageWithIdentityKeyRpcInputParams;
1579
+ data?: SparkSignMessageWithIdentityKeyRpcResponseData;
1580
+ }
1581
+ /**
1582
+ * Data returned by the Spark `signMessageWithIdentityKey` RPC.
1583
+ */
1584
+ export interface SparkSignMessageWithIdentityKeyRpcResponseData {
1585
+ signature: string;
1586
+ }
1587
+ /**
1588
+ * A Spark signing keyshare.
1589
+ */
1590
+ export interface SparkSigningKeyshare {
1591
+ owner_identifiers: Array<string>;
1592
+ public_key: string;
1593
+ public_shares: {
1594
+ [key: string]: string;
1595
+ };
1596
+ threshold: number;
1597
+ updated_time: string;
1598
+ }
1599
+ /**
1600
+ * Balance of a Spark token.
1601
+ */
1602
+ export interface SparkTokenBalance {
1603
+ balance: string;
1604
+ /**
1605
+ * Metadata for a Spark user token.
1606
+ */
1607
+ token_metadata: SparkUserTokenMetadata;
1608
+ }
1609
+ /**
1610
+ * A Spark transfer.
1611
+ */
1612
+ export interface SparkTransfer {
1613
+ id: string;
1614
+ leaves: Array<SparkTransferLeaf>;
1615
+ receiver_identity_public_key: string;
1616
+ sender_identity_public_key: string;
1617
+ status: string;
1618
+ total_value: number;
1619
+ transfer_direction: string;
1620
+ type: string;
1621
+ created_time?: string;
1622
+ expiry_time?: string;
1623
+ updated_time?: string;
1624
+ }
1625
+ /**
1626
+ * A Spark transfer leaf.
1627
+ */
1628
+ export interface SparkTransferLeaf {
1629
+ intermediate_refund_tx: string;
1630
+ secret_cipher: string;
1631
+ signature: string;
1632
+ /**
1633
+ * A Spark wallet leaf node.
1634
+ */
1635
+ leaf?: SparkWalletLeaf;
1636
+ }
1637
+ /**
1638
+ * Transfers satoshis to a Spark address.
1639
+ */
1640
+ export interface SparkTransferRpcInput {
1641
+ method: 'transfer';
1642
+ /**
1643
+ * Parameters for the Spark `transfer` RPC.
1644
+ */
1645
+ params: SparkTransferRpcInputParams;
1578
1646
  /**
1579
1647
  * The Spark network.
1580
1648
  */
1581
1649
  network?: SparkNetwork;
1582
1650
  }
1583
1651
  /**
1584
- * Request body for Spark wallet RPC operations, discriminated by method.
1652
+ * Parameters for the Spark `transfer` RPC.
1585
1653
  */
1586
- export type SparkRpcInput = SparkTransferRpcInput | SparkGetBalanceRpcInput | SparkTransferTokensRpcInput | SparkGetStaticDepositAddressRpcInput | SparkGetClaimStaticDepositQuoteRpcInput | SparkClaimStaticDepositRpcInput | SparkCreateLightningInvoiceRpcInput | SparkPayLightningInvoiceRpcInput | SparkSignMessageWithIdentityKeyRpcInput;
1654
+ export interface SparkTransferRpcInputParams {
1655
+ amount_sats: number;
1656
+ receiver_spark_address: string;
1657
+ }
1587
1658
  /**
1588
1659
  * Response to the Spark `transfer` RPC.
1589
1660
  */
@@ -1595,20 +1666,31 @@ export interface SparkTransferRpcResponse {
1595
1666
  data?: SparkTransfer;
1596
1667
  }
1597
1668
  /**
1598
- * Response to the Spark `getBalance` RPC.
1669
+ * Transfers tokens to a Spark address.
1599
1670
  */
1600
- export interface SparkGetBalanceRpcResponse {
1601
- method: 'getBalance';
1671
+ export interface SparkTransferTokensRpcInput {
1672
+ method: 'transferTokens';
1602
1673
  /**
1603
- * The balance of a Spark wallet.
1674
+ * Parameters for the Spark `transferTokens` RPC.
1604
1675
  */
1605
- data?: SparkBalance;
1676
+ params: SparkTransferTokensRpcInputParams;
1677
+ /**
1678
+ * The Spark network.
1679
+ */
1680
+ network?: SparkNetwork;
1606
1681
  }
1607
1682
  /**
1608
- * Data returned by the Spark `transferTokens` RPC.
1683
+ * Parameters for the Spark `transferTokens` RPC.
1609
1684
  */
1610
- export interface SparkTransferTokensRpcResponseData {
1611
- id: string;
1685
+ export interface SparkTransferTokensRpcInputParams {
1686
+ receiver_spark_address: string;
1687
+ token_amount: number;
1688
+ token_identifier: string;
1689
+ /**
1690
+ * Strategy for selecting outputs in a Spark token transfer.
1691
+ */
1692
+ output_selection_strategy?: SparkOutputSelectionStrategy;
1693
+ selected_outputs?: Array<OutputWithPreviousTransactionData>;
1612
1694
  }
1613
1695
  /**
1614
1696
  * Response to the Spark `transferTokens` RPC.
@@ -1621,97 +1703,383 @@ export interface SparkTransferTokensRpcResponse {
1621
1703
  data?: SparkTransferTokensRpcResponseData;
1622
1704
  }
1623
1705
  /**
1624
- * Data returned by the Spark `getStaticDepositAddress` RPC.
1706
+ * Data returned by the Spark `transferTokens` RPC.
1625
1707
  */
1626
- export interface SparkGetStaticDepositAddressRpcResponseData {
1708
+ export interface SparkTransferTokensRpcResponseData {
1709
+ id: string;
1710
+ }
1711
+ /**
1712
+ * Metadata for a Spark user token.
1713
+ */
1714
+ export interface SparkUserTokenMetadata {
1715
+ decimals: number;
1716
+ max_supply: string;
1717
+ raw_token_identifier: string;
1718
+ token_name: string;
1719
+ token_public_key: string;
1720
+ token_ticker: string;
1721
+ }
1722
+ /**
1723
+ * A Spark wallet leaf node.
1724
+ */
1725
+ export interface SparkWalletLeaf {
1726
+ id: string;
1727
+ /**
1728
+ * The Spark network.
1729
+ */
1730
+ network: SparkNetwork;
1731
+ node_tx: string;
1732
+ owner_identity_public_key: string;
1733
+ refund_tx: string;
1734
+ status: string;
1735
+ tree_id: string;
1736
+ value: number;
1737
+ verifying_public_key: string;
1738
+ vout: number;
1739
+ parent_node_id?: string;
1740
+ /**
1741
+ * A Spark signing keyshare.
1742
+ */
1743
+ signing_keyshare?: SparkSigningKeyshare;
1744
+ }
1745
+ /**
1746
+ * SUI transaction commands allowlist for raw_sign endpoint policy evaluation
1747
+ */
1748
+ export type SuiCommandName = 'TransferObjects' | 'SplitCoins' | 'MergeCoins';
1749
+ /**
1750
+ * An AA authorization for Tempo transactions with P256/WebAuthn signatures.
1751
+ */
1752
+ export interface TempoAaAuthorization {
1753
+ /**
1754
+ * A quantity value that can be either a hex string starting with '0x' or a
1755
+ * non-negative integer.
1756
+ */
1757
+ chain_id: Quantity;
1758
+ contract: string;
1759
+ /**
1760
+ * A quantity value that can be either a hex string starting with '0x' or a
1761
+ * non-negative integer.
1762
+ */
1763
+ nonce: Quantity;
1764
+ /**
1765
+ * A hex-encoded string prefixed with '0x'.
1766
+ */
1767
+ signature: Hex;
1768
+ }
1769
+ /**
1770
+ * A single call within a Tempo batched transaction.
1771
+ */
1772
+ export interface TempoCall {
1773
+ to: string;
1774
+ /**
1775
+ * A hex-encoded string prefixed with '0x'.
1776
+ */
1777
+ data?: Hex;
1778
+ /**
1779
+ * A quantity value that can be either a hex string starting with '0x' or a
1780
+ * non-negative integer.
1781
+ */
1782
+ value?: Quantity;
1783
+ }
1784
+ /**
1785
+ * A fee payer signature for sponsored Tempo transactions (secp256k1 only).
1786
+ */
1787
+ export interface TempoFeePayerSignature {
1788
+ /**
1789
+ * A hex-encoded string prefixed with '0x'.
1790
+ */
1791
+ r: Hex;
1792
+ /**
1793
+ * A hex-encoded string prefixed with '0x'.
1794
+ */
1795
+ s: Hex;
1796
+ y_parity: 0 | 1;
1797
+ }
1798
+ /**
1799
+ * A Spark token output.
1800
+ */
1801
+ export interface TokenOutput {
1802
+ owner_public_key: string;
1803
+ token_amount: string;
1804
+ id?: string;
1805
+ revocation_commitment?: string;
1806
+ token_identifier?: string;
1807
+ token_public_key?: string;
1808
+ withdraw_bond_sats?: number;
1809
+ withdraw_relative_block_locktime?: number;
1810
+ }
1811
+ /**
1812
+ * The destination address for a token transfer. Optionally specify a different
1813
+ * asset or chain for cross-asset or cross-chain transfers.
1814
+ */
1815
+ export interface TokenTransferDestination {
1816
+ /**
1817
+ * Recipient address (hex for EVM, base58 for Solana)
1818
+ */
1627
1819
  address: string;
1820
+ /**
1821
+ * The destination asset. Required for cross-asset transfers (e.g., source 'usdt'
1822
+ * to destination 'usdc').
1823
+ */
1824
+ asset?: string;
1825
+ /**
1826
+ * The destination blockchain network. Required for cross-chain transfers (e.g.,
1827
+ * source 'base' to destination 'arbitrum').
1828
+ */
1829
+ chain?: string;
1628
1830
  }
1629
1831
  /**
1630
- * Response to the Spark `getStaticDepositAddress` RPC.
1832
+ * The source asset, amount, and chain for a token transfer. Specify either `asset`
1833
+ * (named) or `asset_address` (custom), not both.
1631
1834
  */
1632
- export interface SparkGetStaticDepositAddressRpcResponse {
1633
- method: 'getStaticDepositAddress';
1835
+ export type TokenTransferSource = NamedTokenTransferSource | CustomTokenTransferSource;
1836
+ /**
1837
+ * Details of a wallet transaction, varying by transaction type.
1838
+ */
1839
+ export type TransactionDetail = TransferSentTransactionDetail | TransferReceivedTransactionDetail;
1840
+ /**
1841
+ * Token contract address (EVM: 0x-prefixed hex) or mint address (Solana: base58),
1842
+ * used to filter wallet transactions.
1843
+ */
1844
+ export type TransactionTokenAddressInput = string;
1845
+ /**
1846
+ * Details for a received transfer transaction.
1847
+ */
1848
+ export interface TransferReceivedTransactionDetail {
1849
+ asset: 'usdc' | 'usdc.e' | 'eth' | 'pol' | 'usdt' | 'eurc' | 'usdb' | 'sol' | (string & {});
1850
+ chain: 'ethereum' | 'arbitrum' | 'base' | 'tempo' | 'linea' | 'optimism' | 'polygon' | 'solana' | 'zksync_era' | 'sepolia' | 'arbitrum_sepolia' | 'base_sepolia' | 'linea_testnet' | 'optimism_sepolia' | 'polygon_amoy' | 'solana_devnet' | 'solana_testnet';
1851
+ display_values: {
1852
+ [key: string]: string;
1853
+ };
1854
+ raw_value: string;
1855
+ raw_value_decimals: number;
1856
+ recipient: string;
1857
+ recipient_privy_user_id: string | null;
1858
+ sender: string;
1859
+ sender_privy_user_id: string | null;
1860
+ type: 'transfer_received';
1861
+ }
1862
+ /**
1863
+ * Request body for initiating a sponsored token transfer from an embedded wallet.
1864
+ */
1865
+ export interface TransferRequestBody {
1634
1866
  /**
1635
- * Data returned by the Spark `getStaticDepositAddress` RPC.
1867
+ * The destination address for a token transfer. Optionally specify a different
1868
+ * asset or chain for cross-asset or cross-chain transfers.
1636
1869
  */
1637
- data?: SparkGetStaticDepositAddressRpcResponseData;
1870
+ destination: TokenTransferDestination;
1871
+ /**
1872
+ * The source asset, amount, and chain for a token transfer. Specify either `asset`
1873
+ * (named) or `asset_address` (custom), not both.
1874
+ */
1875
+ source: TokenTransferSource;
1876
+ /**
1877
+ * Whether the amount refers to the input token or output token.
1878
+ */
1879
+ amount_type?: AmountType;
1880
+ /**
1881
+ * Maximum allowed slippage in basis points (1 bps = 0.01%).
1882
+ */
1883
+ slippage_bps?: number;
1638
1884
  }
1639
1885
  /**
1640
- * Data returned by the Spark `getClaimStaticDepositQuote` RPC.
1886
+ * Details for a sent transfer transaction.
1641
1887
  */
1642
- export interface SparkGetClaimStaticDepositQuoteRpcResponseData {
1643
- credit_amount_sats: number;
1644
- network: string;
1645
- output_index: number;
1646
- signature: string;
1647
- transaction_id: string;
1888
+ export interface TransferSentTransactionDetail {
1889
+ asset: 'usdc' | 'usdc.e' | 'eth' | 'pol' | 'usdt' | 'eurc' | 'usdb' | 'sol' | (string & {});
1890
+ chain: 'ethereum' | 'arbitrum' | 'base' | 'tempo' | 'linea' | 'optimism' | 'polygon' | 'solana' | 'zksync_era' | 'sepolia' | 'arbitrum_sepolia' | 'base_sepolia' | 'linea_testnet' | 'optimism_sepolia' | 'polygon_amoy' | 'solana_devnet' | 'solana_testnet';
1891
+ display_values: {
1892
+ [key: string]: string;
1893
+ };
1894
+ raw_value: string;
1895
+ raw_value_decimals: number;
1896
+ recipient: string;
1897
+ recipient_privy_user_id: string | null;
1898
+ sender: string;
1899
+ sender_privy_user_id: string | null;
1900
+ type: 'transfer_sent';
1648
1901
  }
1649
1902
  /**
1650
- * Response to the Spark `getClaimStaticDepositQuote` RPC.
1903
+ * The domain parameters for EIP-712 typed data signing.
1651
1904
  */
1652
- export interface SparkGetClaimStaticDepositQuoteRpcResponse {
1653
- method: 'getClaimStaticDepositQuote';
1905
+ export type TypedDataDomainInputParams = {
1906
+ [key: string]: unknown;
1907
+ };
1908
+ /**
1909
+ * A single field definition in an EIP-712 typed data type.
1910
+ */
1911
+ export interface TypedDataTypeFieldInput {
1912
+ name: string;
1913
+ type: string;
1914
+ }
1915
+ /**
1916
+ * The type definitions for EIP-712 typed data signing.
1917
+ */
1918
+ export type TypedDataTypesInputParams = {
1919
+ [key: string]: Array<TypedDataTypeFieldInput>;
1920
+ };
1921
+ /**
1922
+ * An unsigned Ethereum transaction object. Supports standard EVM transaction types
1923
+ * (0, 1, 2, 4) and Tempo transactions (type 118).
1924
+ */
1925
+ export type UnsignedEthereumTransaction = UnsignedStandardEthereumTransaction | UnsignedTempoTransaction;
1926
+ /**
1927
+ * An unsigned standard Ethereum transaction object. Supports EVM transaction types
1928
+ * 0, 1, 2, and 4.
1929
+ */
1930
+ export interface UnsignedStandardEthereumTransaction {
1931
+ authorization_list?: Array<EthereumSign7702Authorization>;
1932
+ /**
1933
+ * A quantity value that can be either a hex string starting with '0x' or a
1934
+ * non-negative integer.
1935
+ */
1936
+ chain_id?: Quantity;
1937
+ /**
1938
+ * A hex-encoded string prefixed with '0x'.
1939
+ */
1940
+ data?: Hex;
1941
+ from?: string;
1942
+ /**
1943
+ * A quantity value that can be either a hex string starting with '0x' or a
1944
+ * non-negative integer.
1945
+ */
1946
+ gas_limit?: Quantity;
1947
+ /**
1948
+ * A quantity value that can be either a hex string starting with '0x' or a
1949
+ * non-negative integer.
1950
+ */
1951
+ gas_price?: Quantity;
1952
+ /**
1953
+ * A quantity value that can be either a hex string starting with '0x' or a
1954
+ * non-negative integer.
1955
+ */
1956
+ max_fee_per_gas?: Quantity;
1957
+ /**
1958
+ * A quantity value that can be either a hex string starting with '0x' or a
1959
+ * non-negative integer.
1960
+ */
1961
+ max_priority_fee_per_gas?: Quantity;
1962
+ /**
1963
+ * A quantity value that can be either a hex string starting with '0x' or a
1964
+ * non-negative integer.
1965
+ */
1966
+ nonce?: Quantity;
1967
+ to?: string;
1968
+ type?: 0 | 1 | 2 | 4;
1969
+ /**
1970
+ * A quantity value that can be either a hex string starting with '0x' or a
1971
+ * non-negative integer.
1972
+ */
1973
+ value?: Quantity;
1974
+ }
1975
+ /**
1976
+ * An unsigned Tempo transaction (type 118) with batched calls.
1977
+ */
1978
+ export interface UnsignedTempoTransaction {
1979
+ calls: Array<TempoCall>;
1980
+ type: 118;
1981
+ aa_authorization_list?: Array<TempoAaAuthorization>;
1982
+ access_list?: Array<UnsignedTempoTransaction.AccessList>;
1983
+ /**
1984
+ * A quantity value that can be either a hex string starting with '0x' or a
1985
+ * non-negative integer.
1986
+ */
1987
+ chain_id?: Quantity;
1988
+ /**
1989
+ * A fee payer signature for sponsored Tempo transactions (secp256k1 only).
1990
+ */
1991
+ fee_payer_signature?: TempoFeePayerSignature;
1992
+ fee_token?: string;
1993
+ from?: string;
1994
+ /**
1995
+ * A quantity value that can be either a hex string starting with '0x' or a
1996
+ * non-negative integer.
1997
+ */
1998
+ gas_limit?: Quantity;
1999
+ /**
2000
+ * A quantity value that can be either a hex string starting with '0x' or a
2001
+ * non-negative integer.
2002
+ */
2003
+ max_fee_per_gas?: Quantity;
2004
+ /**
2005
+ * A quantity value that can be either a hex string starting with '0x' or a
2006
+ * non-negative integer.
2007
+ */
2008
+ max_priority_fee_per_gas?: Quantity;
2009
+ /**
2010
+ * A quantity value that can be either a hex string starting with '0x' or a
2011
+ * non-negative integer.
2012
+ */
2013
+ nonce?: Quantity;
2014
+ /**
2015
+ * A quantity value that can be either a hex string starting with '0x' or a
2016
+ * non-negative integer.
2017
+ */
2018
+ nonce_key?: Quantity;
2019
+ /**
2020
+ * A quantity value that can be either a hex string starting with '0x' or a
2021
+ * non-negative integer.
2022
+ */
2023
+ valid_after?: Quantity;
2024
+ /**
2025
+ * A quantity value that can be either a hex string starting with '0x' or a
2026
+ * non-negative integer.
2027
+ */
2028
+ valid_before?: Quantity;
2029
+ }
2030
+ export declare namespace UnsignedTempoTransaction {
2031
+ interface AccessList {
2032
+ address: string;
2033
+ storage_keys: Array<WalletsAPI.Hex>;
2034
+ }
2035
+ }
2036
+ /**
2037
+ * An ERC-4337 user operation.
2038
+ */
2039
+ export interface UserOperationInput {
2040
+ /**
2041
+ * A hex-encoded string prefixed with '0x'.
2042
+ */
2043
+ call_data: Hex;
2044
+ /**
2045
+ * A hex-encoded string prefixed with '0x'.
2046
+ */
2047
+ call_gas_limit: Hex;
2048
+ /**
2049
+ * A hex-encoded string prefixed with '0x'.
2050
+ */
2051
+ max_fee_per_gas: Hex;
2052
+ /**
2053
+ * A hex-encoded string prefixed with '0x'.
2054
+ */
2055
+ max_priority_fee_per_gas: Hex;
2056
+ /**
2057
+ * A hex-encoded string prefixed with '0x'.
2058
+ */
2059
+ nonce: Hex;
1654
2060
  /**
1655
- * Data returned by the Spark `getClaimStaticDepositQuote` RPC.
2061
+ * A hex-encoded string prefixed with '0x'.
1656
2062
  */
1657
- data?: SparkGetClaimStaticDepositQuoteRpcResponseData;
1658
- }
1659
- /**
1660
- * Data returned by the Spark `claimStaticDeposit` RPC.
1661
- */
1662
- export interface SparkClaimStaticDepositRpcResponseData {
1663
- transfer_id: string;
1664
- }
1665
- /**
1666
- * Response to the Spark `claimStaticDeposit` RPC.
1667
- */
1668
- export interface SparkClaimStaticDepositRpcResponse {
1669
- method: 'claimStaticDeposit';
2063
+ pre_verification_gas: Hex;
2064
+ sender: string;
1670
2065
  /**
1671
- * Data returned by the Spark `claimStaticDeposit` RPC.
2066
+ * A hex-encoded string prefixed with '0x'.
1672
2067
  */
1673
- data?: SparkClaimStaticDepositRpcResponseData;
1674
- }
1675
- /**
1676
- * Response to the Spark `createLightningInvoice` RPC.
1677
- */
1678
- export interface SparkCreateLightningInvoiceRpcResponse {
1679
- method: 'createLightningInvoice';
2068
+ verification_gas_limit: Hex;
2069
+ paymaster?: string;
1680
2070
  /**
1681
- * A Spark Lightning receive request.
2071
+ * A hex-encoded string prefixed with '0x'.
1682
2072
  */
1683
- data?: SparkLightningReceiveRequest;
1684
- }
1685
- /**
1686
- * Response to the Spark `payLightningInvoice` RPC.
1687
- */
1688
- export interface SparkPayLightningInvoiceRpcResponse {
1689
- method: 'payLightningInvoice';
2073
+ paymaster_data?: Hex;
1690
2074
  /**
1691
- * A Spark transfer.
2075
+ * A hex-encoded string prefixed with '0x'.
1692
2076
  */
1693
- data?: SparkTransfer | SparkLightningSendRequest;
1694
- }
1695
- /**
1696
- * Data returned by the Spark `signMessageWithIdentityKey` RPC.
1697
- */
1698
- export interface SparkSignMessageWithIdentityKeyRpcResponseData {
1699
- signature: string;
1700
- }
1701
- /**
1702
- * Response to the Spark `signMessageWithIdentityKey` RPC.
1703
- */
1704
- export interface SparkSignMessageWithIdentityKeyRpcResponse {
1705
- method: 'signMessageWithIdentityKey';
2077
+ paymaster_post_op_gas_limit?: Hex;
1706
2078
  /**
1707
- * Data returned by the Spark `signMessageWithIdentityKey` RPC.
2079
+ * A hex-encoded string prefixed with '0x'.
1708
2080
  */
1709
- data?: SparkSignMessageWithIdentityKeyRpcResponseData;
2081
+ paymaster_verification_gas_limit?: Hex;
1710
2082
  }
1711
- /**
1712
- * Response body for Spark wallet RPC operations, discriminated by method.
1713
- */
1714
- export type SparkRpcResponse = SparkTransferRpcResponse | SparkGetBalanceRpcResponse | SparkTransferTokensRpcResponse | SparkGetStaticDepositAddressRpcResponse | SparkGetClaimStaticDepositQuoteRpcResponse | SparkClaimStaticDepositRpcResponse | SparkCreateLightningInvoiceRpcResponse | SparkPayLightningInvoiceRpcResponse | SparkSignMessageWithIdentityKeyRpcResponse;
1715
2083
  /**
1716
2084
  * A wallet managed by Privy's wallet infrastructure.
1717
2085
  */
@@ -1779,79 +2147,82 @@ export interface Wallet {
1779
2147
  public_key?: string;
1780
2148
  }
1781
2149
  /**
1782
- * Request body for looking up a wallet by its blockchain address.
2150
+ * Additional signers for the wallet.
1783
2151
  */
1784
- export interface GetByWalletAddressRequestBody {
1785
- /**
1786
- * A blockchain wallet address (Ethereum or Solana).
1787
- */
1788
- address: Address;
1789
- }
2152
+ export type WalletAdditionalSigner = Array<WalletAdditionalSignerItem>;
1790
2153
  /**
1791
- * Request body for updating a wallet.
2154
+ * A single additional signer on a wallet, with an optional policy override.
1792
2155
  */
1793
- export interface WalletUpdateRequestBody {
1794
- /**
1795
- * Additional signers for the wallet.
1796
- */
1797
- additional_signers?: AdditionalSignerInput;
1798
- /**
1799
- * A human-readable label for the wallet. Set to null to clear.
1800
- */
1801
- display_name?: string | null;
1802
- /**
1803
- * The owner of the resource, specified as a Privy user ID, a P-256 public key, or
1804
- * null to remove the current owner.
1805
- */
1806
- owner?: SharedAPI.OwnerInput | null;
2156
+ export interface WalletAdditionalSignerItem {
1807
2157
  /**
1808
- * The key quorum ID to set as the owner of the resource. If you provide this, do
1809
- * not specify an owner.
2158
+ * A unique identifier for a key quorum.
1810
2159
  */
1811
- owner_id?: SharedAPI.OwnerIDInput | null;
2160
+ signer_id: SharedAPI.KeyQuorumID;
1812
2161
  /**
1813
- * New policy IDs to enforce on the wallet. Currently, only one policy is supported
1814
- * per wallet.
2162
+ * An optional list of up to one policy ID to enforce on the wallet.
1815
2163
  */
1816
- policy_ids?: Array<string>;
2164
+ override_policy_ids?: PolicyInput;
1817
2165
  }
1818
2166
  /**
1819
- * Input for a single wallet in a batch creation request.
2167
+ * Input for registering or updating an application public signing key for
2168
+ * API-based wallet actions.
1820
2169
  */
1821
- export interface WalletBatchItemInput {
2170
+ export interface WalletAPIRegisterAuthorizationKeyInput {
2171
+ public_key: string;
2172
+ display_name?: string;
1822
2173
  /**
1823
- * The wallet chain types.
2174
+ * The role of an authorization key, controlling what actions it can authorize on a
2175
+ * wallet.
1824
2176
  */
1825
- chain_type: WalletChainType;
2177
+ role?: AuthorizationKeyRole | null;
2178
+ }
2179
+ /**
2180
+ * Input for revoking an application authorization key.
2181
+ */
2182
+ export interface WalletAPIRevokeAuthorizationKeyInput {
2183
+ id: string;
2184
+ }
2185
+ /**
2186
+ * A named asset supported across all chains.
2187
+ */
2188
+ export type WalletAsset = 'usdc' | 'usdc.e' | 'eth' | 'pol' | 'usdt' | 'eurc' | 'usdb' | 'sol';
2189
+ /**
2190
+ * Request body for wallet authentication with HPKE-encrypted response.
2191
+ */
2192
+ export interface WalletAuthenticateRequestBody {
1826
2193
  /**
1827
- * Additional signers for the wallet.
2194
+ * The encryption type for the authentication response. Currently only supports
2195
+ * HPKE.
1828
2196
  */
1829
- additional_signers?: AdditionalSignerInput;
2197
+ encryption_type: 'HPKE';
1830
2198
  /**
1831
- * A human-readable label for the wallet.
2199
+ * The public key of your ECDH keypair, in base64-encoded, SPKI-format, whose
2200
+ * private key will be able to decrypt the session key.
1832
2201
  */
1833
- display_name?: string;
2202
+ recipient_public_key: string;
1834
2203
  /**
1835
- * A customer-provided identifier for mapping to external systems. URL-safe
1836
- * characters only ([a-zA-Z0-9_-]), max 64 chars. Write-once: cannot be changed
1837
- * after creation.
2204
+ * The user's JWT, to be used to authenticate the user.
1838
2205
  */
1839
- external_id?: string;
2206
+ user_jwt: string;
2207
+ }
2208
+ /**
2209
+ * Headers required to authorize wallet operations.
2210
+ */
2211
+ export interface WalletAuthorizationHeaders {
1840
2212
  /**
1841
- * The owner of the resource, specified as a Privy user ID, a P-256 public key, or
1842
- * null to remove the current owner.
2213
+ * ID of your Privy app.
1843
2214
  */
1844
- owner?: SharedAPI.OwnerInput | null;
2215
+ 'privy-app-id': string;
1845
2216
  /**
1846
- * The key quorum ID to set as the owner of the resource. If you provide this, do
1847
- * not specify an owner.
2217
+ * Request authorization signature. If multiple signatures are required, they
2218
+ * should be comma separated.
1848
2219
  */
1849
- owner_id?: SharedAPI.OwnerIDInput | null;
2220
+ 'privy-authorization-signature'?: string;
1850
2221
  /**
1851
- * List of policy IDs for policies that should be enforced on the wallet.
1852
- * Currently, only one policy is supported per wallet.
2222
+ * Request expiry. Value is a Unix timestamp in milliseconds representing the
2223
+ * deadline by which the request must be processed.
1853
2224
  */
1854
- policy_ids?: Array<string>;
2225
+ 'privy-request-expiry'?: string;
1855
2226
  }
1856
2227
  /**
1857
2228
  * Request body for batch wallet creation.
@@ -1862,6 +2233,15 @@ export interface WalletBatchCreateInput {
1862
2233
  */
1863
2234
  wallets: Array<WalletBatchItemInput>;
1864
2235
  }
2236
+ /**
2237
+ * Response for a batch wallet creation request.
2238
+ */
2239
+ export interface WalletBatchCreateResponse {
2240
+ /**
2241
+ * Array of results for each wallet creation request, in the same order as input.
2242
+ */
2243
+ results: Array<WalletBatchCreateResult>;
2244
+ }
1865
2245
  /**
1866
2246
  * A single result from a batch wallet creation operation.
1867
2247
  */
@@ -1898,165 +2278,72 @@ export declare namespace WalletBatchCreateResult {
1898
2278
  * The index of the wallet in the original request array.
1899
2279
  */
1900
2280
  index: number;
1901
- success: false;
1902
- }
1903
- }
1904
- /**
1905
- * Response for a batch wallet creation request.
1906
- */
1907
- export interface WalletBatchCreateResponse {
1908
- /**
1909
- * Array of results for each wallet creation request, in the same order as input.
1910
- */
1911
- results: Array<WalletBatchCreateResult>;
1912
- }
1913
- /**
1914
- * Request body for wallet RPC operations, discriminated by method.
1915
- */
1916
- export type WalletRpcRequestBody = EthereumSignTransactionRpcInput | EthereumSendTransactionRpcInput | EthereumPersonalSignRpcInput | EthereumSignTypedDataRpcInput | EthereumSecp256k1SignRpcInput | EthereumSign7702AuthorizationRpcInput | EthereumSignUserOperationRpcInput | EthereumSendCallsRpcInput | SolanaSignTransactionRpcInput | SolanaSignAndSendTransactionRpcInput | SolanaSignMessageRpcInput | SparkTransferRpcInput | SparkGetBalanceRpcInput | SparkTransferTokensRpcInput | SparkGetStaticDepositAddressRpcInput | SparkGetClaimStaticDepositQuoteRpcInput | SparkClaimStaticDepositRpcInput | SparkCreateLightningInvoiceRpcInput | SparkPayLightningInvoiceRpcInput | SparkSignMessageWithIdentityKeyRpcInput | ExportPrivateKeyRpcInput | ExportSeedPhraseRpcInput;
1917
- /**
1918
- * Response body for wallet RPC operations, discriminated by method.
1919
- */
1920
- export type WalletRpcResponse = EthereumPersonalSignRpcResponse | EthereumSignTypedDataRpcResponse | EthereumSignTransactionRpcResponse | EthereumSendTransactionRpcResponse | EthereumSignUserOperationRpcResponse | EthereumSign7702AuthorizationRpcResponse | EthereumSecp256k1SignRpcResponse | EthereumSendCallsRpcResponse | SolanaSignMessageRpcResponse | SolanaSignTransactionRpcResponse | SolanaSignAndSendTransactionRpcResponse | SparkTransferRpcResponse | SparkGetBalanceRpcResponse | SparkTransferTokensRpcResponse | SparkGetStaticDepositAddressRpcResponse | SparkGetClaimStaticDepositQuoteRpcResponse | SparkClaimStaticDepositRpcResponse | SparkCreateLightningInvoiceRpcResponse | SparkPayLightningInvoiceRpcResponse | SparkSignMessageWithIdentityKeyRpcResponse | ExportPrivateKeyRpcResponse | ExportSeedPhraseRpcResponse;
1921
- /**
1922
- * Request body for wallet authentication with HPKE-encrypted response.
1923
- */
1924
- export interface WalletAuthenticateRequestBody {
1925
- /**
1926
- * The encryption type for the authentication response. Currently only supports
1927
- * HPKE.
1928
- */
1929
- encryption_type: 'HPKE';
1930
- /**
1931
- * The public key of your ECDH keypair, in base64-encoded, SPKI-format, whose
1932
- * private key will be able to decrypt the session key.
1933
- */
1934
- recipient_public_key: string;
1935
- /**
1936
- * The user's JWT, to be used to authenticate the user.
1937
- */
1938
- user_jwt: string;
1939
- }
1940
- /**
1941
- * The input for private key wallets.
1942
- */
1943
- export interface PrivateKeyInitInput {
1944
- /**
1945
- * The address of the wallet to import.
1946
- */
1947
- address: string;
1948
- /**
1949
- * The chain type of the wallet to import. Currently supports `ethereum` and
1950
- * `solana`.
1951
- */
1952
- chain_type: WalletImportSupportedChains;
1953
- /**
1954
- * The encryption type of the wallet to import. Currently only supports `HPKE`.
1955
- */
1956
- encryption_type: HpkeEncryption;
1957
- entropy_type: 'private-key';
1958
- }
1959
- /**
1960
- * The input for HD wallets.
1961
- */
1962
- export interface HDInitInput {
1963
- /**
1964
- * The address of the wallet to import.
1965
- */
1966
- address: string;
1967
- /**
1968
- * The chain type of the wallet to import. Currently supports `ethereum` and
1969
- * `solana`.
1970
- */
1971
- chain_type: WalletImportSupportedChains;
1972
- /**
1973
- * The encryption type of the wallet to import. Currently only supports `HPKE`.
1974
- */
1975
- encryption_type: HpkeEncryption;
1976
- /**
1977
- * The entropy type of the wallet to import.
1978
- */
1979
- entropy_type: 'hd';
1980
- /**
1981
- * The index of the wallet to import.
1982
- */
1983
- index: number;
2281
+ success: false;
2282
+ }
1984
2283
  }
1985
2284
  /**
1986
- * The submission input for importing a private key wallet.
2285
+ * Input for a single wallet in a batch creation request.
1987
2286
  */
1988
- export interface PrivateKeySubmitInput {
2287
+ export interface WalletBatchItemInput {
1989
2288
  /**
1990
- * The address of the wallet to import.
2289
+ * The wallet chain types.
1991
2290
  */
1992
- address: string;
2291
+ chain_type: WalletChainType;
1993
2292
  /**
1994
- * The chain type of the wallet to import. Currently supports `ethereum` and
1995
- * `solana`.
2293
+ * Additional signers for the wallet.
1996
2294
  */
1997
- chain_type: WalletImportSupportedChains;
2295
+ additional_signers?: AdditionalSignerInput;
1998
2296
  /**
1999
- * The encrypted entropy of the wallet to import.
2297
+ * A human-readable label for the wallet.
2000
2298
  */
2001
- ciphertext: string;
2299
+ display_name?: string;
2002
2300
  /**
2003
- * The base64-encoded encapsulated key that was generated during encryption, for
2004
- * use during decryption inside the TEE.
2301
+ * A customer-provided identifier for mapping to external systems. URL-safe
2302
+ * characters only ([a-zA-Z0-9_-]), max 64 chars. Write-once: cannot be changed
2303
+ * after creation.
2005
2304
  */
2006
- encapsulated_key: string;
2305
+ external_id?: string;
2007
2306
  /**
2008
- * The encryption type of the wallet to import. Currently only supports `HPKE`.
2307
+ * The owner of the resource, specified as a Privy user ID, a P-256 public key, or
2308
+ * null to remove the current owner.
2009
2309
  */
2010
- encryption_type: HpkeEncryption;
2011
- entropy_type: 'private-key';
2310
+ owner?: SharedAPI.OwnerInput | null;
2012
2311
  /**
2013
- * Optional HPKE configuration for wallet import decryption. These parameters allow
2014
- * importing wallets encrypted by external providers that use different HPKE
2015
- * configurations.
2312
+ * The key quorum ID to set as the owner of the resource. If you provide this, do
2313
+ * not specify an owner.
2016
2314
  */
2017
- hpke_config?: HpkeImportConfig;
2315
+ owner_id?: SharedAPI.OwnerIDInput | null;
2316
+ /**
2317
+ * List of policy IDs for policies that should be enforced on the wallet.
2318
+ * Currently, only one policy is supported per wallet.
2319
+ */
2320
+ policy_ids?: Array<string>;
2018
2321
  }
2019
2322
  /**
2020
- * The submission input for importing an HD wallet.
2323
+ * The wallet chain types.
2021
2324
  */
2022
- export interface HDSubmitInput {
2023
- /**
2024
- * The address of the wallet to import.
2025
- */
2026
- address: string;
2027
- /**
2028
- * The chain type of the wallet to import. Currently supports `ethereum` and
2029
- * `solana`.
2030
- */
2031
- chain_type: WalletImportSupportedChains;
2032
- /**
2033
- * The encrypted entropy of the wallet to import.
2034
- */
2035
- ciphertext: string;
2036
- /**
2037
- * The base64-encoded encapsulated key that was generated during encryption, for
2038
- * use during decryption inside the TEE.
2039
- */
2040
- encapsulated_key: string;
2041
- /**
2042
- * The encryption type of the wallet to import. Currently only supports `HPKE`.
2043
- */
2044
- encryption_type: HpkeEncryption;
2045
- /**
2046
- * The entropy type of the wallet to import.
2047
- */
2048
- entropy_type: 'hd';
2325
+ export type WalletChainType = 'ethereum' | 'solana' | 'cosmos' | 'stellar' | 'sui' | 'aptos' | 'movement' | 'tron' | 'bitcoin-segwit' | 'bitcoin-taproot' | 'pearl' | 'near' | 'ton' | 'starknet' | 'spark';
2326
+ /**
2327
+ * Information about the custodian managing this wallet.
2328
+ */
2329
+ export interface WalletCustodian {
2049
2330
  /**
2050
- * The index of the wallet to import.
2331
+ * The custodian responsible for the wallet.
2051
2332
  */
2052
- index: number;
2333
+ provider: string;
2053
2334
  /**
2054
- * Optional HPKE configuration for wallet import decryption. These parameters allow
2055
- * importing wallets encrypted by external providers that use different HPKE
2056
- * configurations.
2335
+ * The resource ID of the beneficiary of the custodial wallet.
2057
2336
  */
2058
- hpke_config?: HpkeImportConfig;
2337
+ provider_user_id: string;
2059
2338
  }
2339
+ /**
2340
+ * The entropy type of the wallet.
2341
+ */
2342
+ export type WalletEntropyType = 'hd' | 'private-key';
2343
+ /**
2344
+ * A named asset on Ethereum-compatible chains.
2345
+ */
2346
+ export type WalletEthereumAsset = 'usdc' | 'usdc.e' | 'eth' | 'pol' | 'usdt' | 'eurc' | 'usdb';
2060
2347
  /**
2061
2348
  * Request body for exporting a wallet private key.
2062
2349
  */
@@ -2090,164 +2377,66 @@ export interface WalletExportResponseBody {
2090
2377
  encryption_type: HpkeEncryption;
2091
2378
  }
2092
2379
  /**
2093
- * The source asset, amount, and chain for a token transfer.
2380
+ * Response from initializing a wallet import, containing the encryption public
2381
+ * key.
2094
2382
  */
2095
- export interface TokenTransferSource {
2096
- /**
2097
- * Amount as a decimal string in the token's standard unit (e.g. "1.5" for 1.5
2098
- * USDC, "0.01" for 0.01 ETH). Not in the smallest on-chain unit (wei, lamports,
2099
- * etc.).
2100
- */
2101
- amount: string;
2102
- /**
2103
- * The asset to transfer. Supported: 'usdc', 'usdb', 'usdt' (stablecoins), 'eth'
2104
- * (native Ethereum), 'sol' (native Solana).
2105
- */
2106
- asset: string;
2383
+ export interface WalletImportInitResponse {
2384
+ encryption_public_key: string;
2107
2385
  /**
2108
- * The blockchain network on which to perform the transfer. Supported chains
2109
- * include: 'ethereum', 'base', 'arbitrum', 'polygon', 'solana', and their
2110
- * respective testnets.
2386
+ * The encryption type of the wallet to import. Currently only supports `HPKE`.
2111
2387
  */
2112
- chain: string;
2388
+ encryption_type: HpkeEncryption;
2389
+ import_id?: string;
2113
2390
  }
2114
2391
  /**
2115
- * The destination address for a token transfer.
2392
+ * The chain type of the wallet to import. Currently supports `ethereum` and
2393
+ * `solana`.
2116
2394
  */
2117
- export interface TokenTransferDestination {
2118
- /**
2119
- * Recipient address (hex for EVM, base58 for Solana)
2120
- */
2121
- address: string;
2122
- }
2395
+ export type WalletImportSupportedChains = 'ethereum' | 'solana';
2123
2396
  /**
2124
- * Request body for initiating a sponsored token transfer from an embedded wallet.
2397
+ * The entropy type of the wallet to import. Supports `private-key` for raw private
2398
+ * keys and `hd` for HD wallet seed phrases.
2125
2399
  */
2126
- export interface TransferRequestBody {
2127
- /**
2128
- * The destination address for a token transfer.
2129
- */
2130
- destination: TokenTransferDestination;
2131
- /**
2132
- * The source asset, amount, and chain for a token transfer.
2133
- */
2134
- source: TokenTransferSource;
2135
- }
2400
+ export type WalletImportSupportedEntropyTypes = 'private-key' | 'hd';
2136
2401
  /**
2137
- * SUI transaction commands allowlist for raw_sign endpoint policy evaluation
2402
+ * Request body for wallet RPC operations, discriminated by method.
2138
2403
  */
2139
- export type SuiCommandName = 'TransferObjects' | 'SplitCoins' | 'MergeCoins';
2404
+ export type WalletRpcRequestBody = EthereumSignTransactionRpcInput | EthereumSendTransactionRpcInput | EthereumPersonalSignRpcInput | EthereumSignTypedDataRpcInput | EthereumSecp256k1SignRpcInput | EthereumSign7702AuthorizationRpcInput | EthereumSignUserOperationRpcInput | EthereumSendCallsRpcInput | SolanaSignTransactionRpcInput | SolanaSignAndSendTransactionRpcInput | SolanaSignMessageRpcInput | SparkTransferRpcInput | SparkGetBalanceRpcInput | SparkTransferTokensRpcInput | SparkGetStaticDepositAddressRpcInput | SparkGetClaimStaticDepositQuoteRpcInput | SparkClaimStaticDepositRpcInput | SparkCreateLightningInvoiceRpcInput | SparkPayLightningInvoiceRpcInput | SparkSignMessageWithIdentityKeyRpcInput | ExportPrivateKeyRpcInput | ExportSeedPhraseRpcInput;
2140
2405
  /**
2141
- * A named asset on Ethereum-compatible chains.
2406
+ * Response body for wallet RPC operations, discriminated by method.
2142
2407
  */
2143
- export type WalletEthereumAsset = 'usdc' | 'usdc.e' | 'eth' | 'pol' | 'usdt' | 'eurc' | 'usdb';
2408
+ export type WalletRpcResponse = EthereumPersonalSignRpcResponse | EthereumSignTypedDataRpcResponse | EthereumSignTransactionRpcResponse | EthereumSendTransactionRpcResponse | EthereumSignUserOperationRpcResponse | EthereumSign7702AuthorizationRpcResponse | EthereumSecp256k1SignRpcResponse | EthereumSendCallsRpcResponse | SolanaSignMessageRpcResponse | SolanaSignTransactionRpcResponse | SolanaSignAndSendTransactionRpcResponse | SparkTransferRpcResponse | SparkGetBalanceRpcResponse | SparkTransferTokensRpcResponse | SparkGetStaticDepositAddressRpcResponse | SparkGetClaimStaticDepositQuoteRpcResponse | SparkClaimStaticDepositRpcResponse | SparkCreateLightningInvoiceRpcResponse | SparkPayLightningInvoiceRpcResponse | SparkSignMessageWithIdentityKeyRpcResponse | ExportPrivateKeyRpcResponse | ExportSeedPhraseRpcResponse;
2144
2409
  /**
2145
2410
  * A named asset on Solana.
2146
2411
  */
2147
2412
  export type WalletSolanaAsset = 'sol' | 'usdc' | 'eurc' | 'usdb';
2148
2413
  /**
2149
- * A named asset supported across all chains.
2150
- */
2151
- export type WalletAsset = 'usdc' | 'usdc.e' | 'eth' | 'pol' | 'usdt' | 'eurc' | 'usdb' | 'sol';
2152
- /**
2153
- * Details for a sent transfer transaction.
2154
- */
2155
- export interface TransferSentTransactionDetail {
2156
- asset: 'usdc' | 'usdc.e' | 'eth' | 'pol' | 'usdt' | 'eurc' | 'usdb' | 'sol' | (string & {});
2157
- chain: 'ethereum' | 'arbitrum' | 'base' | 'tempo' | 'linea' | 'optimism' | 'polygon' | 'solana' | 'zksync_era' | 'sepolia' | 'arbitrum_sepolia' | 'base_sepolia' | 'linea_testnet' | 'optimism_sepolia' | 'polygon_amoy' | 'solana_devnet' | 'solana_testnet';
2158
- display_values: {
2159
- [key: string]: string;
2160
- };
2161
- raw_value: string;
2162
- raw_value_decimals: number;
2163
- recipient: string;
2164
- recipient_privy_user_id: string | null;
2165
- sender: string;
2166
- sender_privy_user_id: string | null;
2167
- type: 'transfer_sent';
2168
- }
2169
- /**
2170
- * Details for a received transfer transaction.
2171
- */
2172
- export interface TransferReceivedTransactionDetail {
2173
- asset: 'usdc' | 'usdc.e' | 'eth' | 'pol' | 'usdt' | 'eurc' | 'usdb' | 'sol' | (string & {});
2174
- chain: 'ethereum' | 'arbitrum' | 'base' | 'tempo' | 'linea' | 'optimism' | 'polygon' | 'solana' | 'zksync_era' | 'sepolia' | 'arbitrum_sepolia' | 'base_sepolia' | 'linea_testnet' | 'optimism_sepolia' | 'polygon_amoy' | 'solana_devnet' | 'solana_testnet';
2175
- display_values: {
2176
- [key: string]: string;
2177
- };
2178
- raw_value: string;
2179
- raw_value_decimals: number;
2180
- recipient: string;
2181
- recipient_privy_user_id: string | null;
2182
- sender: string;
2183
- sender_privy_user_id: string | null;
2184
- type: 'transfer_received';
2185
- }
2186
- /**
2187
- * Details of a wallet transaction, varying by transaction type.
2188
- */
2189
- export type TransactionDetail = TransferSentTransactionDetail | TransferReceivedTransactionDetail;
2190
- /**
2191
- * Input for registering or updating an application public signing key for
2192
- * API-based wallet actions.
2414
+ * Request body for updating a wallet.
2193
2415
  */
2194
- export interface WalletAPIRegisterAuthorizationKeyInput {
2195
- public_key: string;
2196
- display_name?: string;
2416
+ export interface WalletUpdateRequestBody {
2197
2417
  /**
2198
- * The role of an authorization key, controlling what actions it can authorize on a
2199
- * wallet.
2418
+ * Additional signers for the wallet.
2200
2419
  */
2201
- role?: AuthorizationKeyRole | null;
2202
- }
2203
- /**
2204
- * Input for revoking an application authorization key.
2205
- */
2206
- export interface WalletAPIRevokeAuthorizationKeyInput {
2207
- id: string;
2208
- }
2209
- /**
2210
- * Dashboard response for a wallet authorization key (includes role, which is an
2211
- * internal-only concept).
2212
- */
2213
- export interface AuthorizationKeyDashboardResponse {
2214
- id: string;
2215
- created_at: number;
2216
- display_name: string | null;
2217
- public_key: string;
2420
+ additional_signers?: AdditionalSignerInput;
2218
2421
  /**
2219
- * The role of an authorization key, controlling what actions it can authorize on a
2220
- * wallet.
2422
+ * A human-readable label for the wallet. Set to null to clear.
2221
2423
  */
2222
- role: AuthorizationKeyRole | null;
2223
- }
2224
- /**
2225
- * Public-facing response for a wallet authorization key.
2226
- */
2227
- export interface AuthorizationKeyResponse {
2228
- id: string;
2229
- created_at: number;
2230
- display_name: string | null;
2231
- public_key: string;
2232
- }
2233
- /**
2234
- * Headers required to authorize wallet operations.
2235
- */
2236
- export interface WalletAuthorizationHeaders {
2424
+ display_name?: string | null;
2237
2425
  /**
2238
- * ID of your Privy app.
2426
+ * The owner of the resource, specified as a Privy user ID, a P-256 public key, or
2427
+ * null to remove the current owner.
2239
2428
  */
2240
- 'privy-app-id': string;
2429
+ owner?: SharedAPI.OwnerInput | null;
2241
2430
  /**
2242
- * Request authorization signature. If multiple signatures are required, they
2243
- * should be comma separated.
2431
+ * The key quorum ID to set as the owner of the resource. If you provide this, do
2432
+ * not specify an owner.
2244
2433
  */
2245
- 'privy-authorization-signature'?: string;
2434
+ owner_id?: SharedAPI.OwnerIDInput | null;
2246
2435
  /**
2247
- * Request expiry. Value is a Unix timestamp in milliseconds representing the
2248
- * deadline by which the request must be processed.
2436
+ * New policy IDs to enforce on the wallet. Currently, only one policy is supported
2437
+ * per wallet.
2249
2438
  */
2250
- 'privy-request-expiry'?: string;
2439
+ policy_ids?: Array<string>;
2251
2440
  }
2252
2441
  export interface WalletInitImportResponse {
2253
2442
  /**
@@ -2267,7 +2456,7 @@ export declare namespace WalletAuthenticateWithJwtResponse {
2267
2456
  */
2268
2457
  encrypted_authorization_key: WithEncryption.EncryptedAuthorizationKey;
2269
2458
  /**
2270
- * The expiration time of the authorization key in seconds since the epoch.
2459
+ * The expiration time of the authorization key in milliseconds since the epoch.
2271
2460
  */
2272
2461
  expires_at: number;
2273
2462
  wallets: Array<WalletsAPI.Wallet>;
@@ -2299,7 +2488,7 @@ export declare namespace WalletAuthenticateWithJwtResponse {
2299
2488
  */
2300
2489
  authorization_key: string;
2301
2490
  /**
2302
- * The expiration time of the authorization key in seconds since the epoch.
2491
+ * The expiration time of the authorization key in milliseconds since the epoch.
2303
2492
  */
2304
2493
  expires_at: number;
2305
2494
  wallets: Array<WalletsAPI.Wallet>;
@@ -2523,6 +2712,10 @@ export declare namespace WalletRpcParams {
2523
2712
  * Body param
2524
2713
  */
2525
2714
  chain_type?: 'ethereum';
2715
+ /**
2716
+ * Body param: A hex-encoded string prefixed with '0x'.
2717
+ */
2718
+ experimental_data_suffix?: Hex;
2526
2719
  /**
2527
2720
  * Body param
2528
2721
  */
@@ -2757,6 +2950,10 @@ export declare namespace WalletRpcParams {
2757
2950
  * Body param
2758
2951
  */
2759
2952
  chain_type?: 'ethereum';
2953
+ /**
2954
+ * Body param: A hex-encoded string prefixed with '0x'.
2955
+ */
2956
+ experimental_data_suffix?: Hex;
2760
2957
  /**
2761
2958
  * Body param
2762
2959
  */
@@ -3340,7 +3537,7 @@ export declare namespace WalletCreateWalletsWithRecoveryParams {
3340
3537
  }
3341
3538
  }
3342
3539
  export declare namespace Wallets {
3343
- export { type WalletRevokeResponse as WalletRevokeResponse, type CurveSigningChainType as CurveSigningChainType, type ExtendedChainType as ExtendedChainType, type FirstClassChainType as FirstClassChainType, type WalletChainType as WalletChainType, type AuthorizationKeyRole as AuthorizationKeyRole, type WalletEntropyType as WalletEntropyType, type SolanaWalletDerivationStrategy as SolanaWalletDerivationStrategy, type PolicyInput as PolicyInput, type AdditionalSignerItemInput as AdditionalSignerItemInput, type AdditionalSignerInput as AdditionalSignerInput, type WalletAdditionalSignerItem as WalletAdditionalSignerItem, type WalletAdditionalSigner as WalletAdditionalSigner, type Address as Address, type WalletCustodian as WalletCustodian, type CustodialWalletProvider as CustodialWalletProvider, type CustodialWalletChainType as CustodialWalletChainType, type CustodialWalletCreateInput as CustodialWalletCreateInput, type CustodialWallet as CustodialWallet, type HpkeEncryption as HpkeEncryption, type RecipientPublicKey as RecipientPublicKey, type ExportType as ExportType, type PrivateKeyExportInput as PrivateKeyExportInput, type PrivateKeyExportResponse as PrivateKeyExportResponse, type SeedPhraseExportInput as SeedPhraseExportInput, type SeedPhraseExportResponse as SeedPhraseExportResponse, type WalletImportSupportedChains as WalletImportSupportedChains, type WalletImportSupportedEntropyTypes as WalletImportSupportedEntropyTypes, type WalletImportInitResponse as WalletImportInitResponse, type HpkeAeadAlgorithm as HpkeAeadAlgorithm, type HpkeImportConfig as HpkeImportConfig, type CurveType as CurveType, type HDPath as HDPath, type SigningAlgorithm as SigningAlgorithm, type Hex as Hex, type Quantity as Quantity, type ExportPrivateKeyRpcInput as ExportPrivateKeyRpcInput, type ExportPrivateKeyRpcResponse as ExportPrivateKeyRpcResponse, type ExportSeedPhraseRpcInput as ExportSeedPhraseRpcInput, type ExportSeedPhraseRpcResponse as ExportSeedPhraseRpcResponse, type RawSignHashParams as RawSignHashParams, type RawSignBytesEncoding as RawSignBytesEncoding, type RawSignBytesHashFunction as RawSignBytesHashFunction, type RawSignBytesParams as RawSignBytesParams, type RawSignInputParams as RawSignInputParams, type RawSignInput as RawSignInput, type RawSignResponseData as RawSignResponseData, type RawSignResponse as RawSignResponse, type EthereumSign7702Authorization as EthereumSign7702Authorization, type UnsignedEthereumTransaction as UnsignedEthereumTransaction, type UserOperationInput as UserOperationInput, type TypedDataDomainInputParams as TypedDataDomainInputParams, type TypedDataTypeFieldInput as TypedDataTypeFieldInput, type TypedDataTypesInputParams as TypedDataTypesInputParams, type EthereumPersonalSignRpcInputParams as EthereumPersonalSignRpcInputParams, type EthereumPersonalSignRpcInput as EthereumPersonalSignRpcInput, type EthereumSignTransactionRpcInputParams as EthereumSignTransactionRpcInputParams, type EthereumSignTransactionRpcInput as EthereumSignTransactionRpcInput, type EthereumSendTransactionRpcInputParams as EthereumSendTransactionRpcInputParams, type EthereumSendTransactionRpcInput as EthereumSendTransactionRpcInput, type EthereumTypedDataInput as EthereumTypedDataInput, type EthereumSignTypedDataRpcInputParams as EthereumSignTypedDataRpcInputParams, type EthereumSignTypedDataRpcInput as EthereumSignTypedDataRpcInput, type EthereumSecp256k1SignRpcInputParams as EthereumSecp256k1SignRpcInputParams, type EthereumSecp256k1SignRpcInput as EthereumSecp256k1SignRpcInput, type EthereumSign7702AuthorizationRpcInputParams as EthereumSign7702AuthorizationRpcInputParams, type EthereumSign7702AuthorizationRpcInput as EthereumSign7702AuthorizationRpcInput, type EthereumSignUserOperationRpcInputParams as EthereumSignUserOperationRpcInputParams, type EthereumSignUserOperationRpcInput as EthereumSignUserOperationRpcInput, type EthereumSendCallsCall as EthereumSendCallsCall, type EthereumSendCallsRpcInputParams as EthereumSendCallsRpcInputParams, type EthereumSendCallsRpcInput as EthereumSendCallsRpcInput, type EthereumRpcInput as EthereumRpcInput, type EthereumPersonalSignRpcResponseData as EthereumPersonalSignRpcResponseData, type EthereumPersonalSignRpcResponse as EthereumPersonalSignRpcResponse, type EthereumSignTransactionRpcResponseData as EthereumSignTransactionRpcResponseData, type EthereumSignTransactionRpcResponse as EthereumSignTransactionRpcResponse, type EthereumSendTransactionRpcResponseData as EthereumSendTransactionRpcResponseData, type EthereumSendTransactionRpcResponse as EthereumSendTransactionRpcResponse, type EthereumSignTypedDataRpcResponseData as EthereumSignTypedDataRpcResponseData, type EthereumSignTypedDataRpcResponse as EthereumSignTypedDataRpcResponse, type EthereumSecp256k1SignRpcResponseData as EthereumSecp256k1SignRpcResponseData, type EthereumSecp256k1SignRpcResponse as EthereumSecp256k1SignRpcResponse, type EthereumSign7702AuthorizationRpcResponseData as EthereumSign7702AuthorizationRpcResponseData, type EthereumSign7702AuthorizationRpcResponse as EthereumSign7702AuthorizationRpcResponse, type EthereumSignUserOperationRpcResponseData as EthereumSignUserOperationRpcResponseData, type EthereumSignUserOperationRpcResponse as EthereumSignUserOperationRpcResponse, type EthereumSendCallsRpcResponseData as EthereumSendCallsRpcResponseData, type EthereumSendCallsRpcResponse as EthereumSendCallsRpcResponse, type EthereumRpcResponse as EthereumRpcResponse, type SolanaSignTransactionRpcInputParams as SolanaSignTransactionRpcInputParams, type SolanaSignTransactionRpcInput as SolanaSignTransactionRpcInput, type SolanaSignAndSendTransactionRpcInputParams as SolanaSignAndSendTransactionRpcInputParams, type SolanaSignAndSendTransactionRpcInput as SolanaSignAndSendTransactionRpcInput, type SolanaSignMessageRpcInputParams as SolanaSignMessageRpcInputParams, type SolanaSignMessageRpcInput as SolanaSignMessageRpcInput, type SolanaRpcInput as SolanaRpcInput, type SolanaSignTransactionRpcResponseData as SolanaSignTransactionRpcResponseData, type SolanaSignTransactionRpcResponse as SolanaSignTransactionRpcResponse, type SolanaSignAndSendTransactionRpcResponseData as SolanaSignAndSendTransactionRpcResponseData, type SolanaSignAndSendTransactionRpcResponse as SolanaSignAndSendTransactionRpcResponse, type SolanaSignMessageRpcResponseData as SolanaSignMessageRpcResponseData, type SolanaSignMessageRpcResponse as SolanaSignMessageRpcResponse, type SolanaRpcResponse as SolanaRpcResponse, type SparkNetwork as SparkNetwork, type SparkSigningKeyshare as SparkSigningKeyshare, type SparkWalletLeaf as SparkWalletLeaf, type SparkTransferLeaf as SparkTransferLeaf, type SparkTransfer as SparkTransfer, type SparkUserTokenMetadata as SparkUserTokenMetadata, type SparkTokenBalance as SparkTokenBalance, type SparkBalance as SparkBalance, type TokenOutput as TokenOutput, type OutputWithPreviousTransactionData as OutputWithPreviousTransactionData, type SparkLightningFee as SparkLightningFee, type SparkLightningReceiveRequest as SparkLightningReceiveRequest, type SparkLightningSendRequest as SparkLightningSendRequest, type SparkTransferRpcInputParams as SparkTransferRpcInputParams, type SparkTransferRpcInput as SparkTransferRpcInput, type SparkGetBalanceRpcInput as SparkGetBalanceRpcInput, type SparkOutputSelectionStrategy as SparkOutputSelectionStrategy, type SparkTransferTokensRpcInputParams as SparkTransferTokensRpcInputParams, type SparkTransferTokensRpcInput as SparkTransferTokensRpcInput, type SparkGetStaticDepositAddressRpcInput as SparkGetStaticDepositAddressRpcInput, type SparkGetClaimStaticDepositQuoteRpcInputParams as SparkGetClaimStaticDepositQuoteRpcInputParams, type SparkGetClaimStaticDepositQuoteRpcInput as SparkGetClaimStaticDepositQuoteRpcInput, type SparkClaimStaticDepositRpcInputParams as SparkClaimStaticDepositRpcInputParams, type SparkClaimStaticDepositRpcInput as SparkClaimStaticDepositRpcInput, type SparkCreateLightningInvoiceRpcInputParams as SparkCreateLightningInvoiceRpcInputParams, type SparkCreateLightningInvoiceRpcInput as SparkCreateLightningInvoiceRpcInput, type SparkPayLightningInvoiceRpcInputParams as SparkPayLightningInvoiceRpcInputParams, type SparkPayLightningInvoiceRpcInput as SparkPayLightningInvoiceRpcInput, type SparkSignMessageWithIdentityKeyRpcInputParams as SparkSignMessageWithIdentityKeyRpcInputParams, type SparkSignMessageWithIdentityKeyRpcInput as SparkSignMessageWithIdentityKeyRpcInput, type SparkRpcInput as SparkRpcInput, type SparkTransferRpcResponse as SparkTransferRpcResponse, type SparkGetBalanceRpcResponse as SparkGetBalanceRpcResponse, type SparkTransferTokensRpcResponseData as SparkTransferTokensRpcResponseData, type SparkTransferTokensRpcResponse as SparkTransferTokensRpcResponse, type SparkGetStaticDepositAddressRpcResponseData as SparkGetStaticDepositAddressRpcResponseData, type SparkGetStaticDepositAddressRpcResponse as SparkGetStaticDepositAddressRpcResponse, type SparkGetClaimStaticDepositQuoteRpcResponseData as SparkGetClaimStaticDepositQuoteRpcResponseData, type SparkGetClaimStaticDepositQuoteRpcResponse as SparkGetClaimStaticDepositQuoteRpcResponse, type SparkClaimStaticDepositRpcResponseData as SparkClaimStaticDepositRpcResponseData, type SparkClaimStaticDepositRpcResponse as SparkClaimStaticDepositRpcResponse, type SparkCreateLightningInvoiceRpcResponse as SparkCreateLightningInvoiceRpcResponse, type SparkPayLightningInvoiceRpcResponse as SparkPayLightningInvoiceRpcResponse, type SparkSignMessageWithIdentityKeyRpcResponseData as SparkSignMessageWithIdentityKeyRpcResponseData, type SparkSignMessageWithIdentityKeyRpcResponse as SparkSignMessageWithIdentityKeyRpcResponse, type SparkRpcResponse as SparkRpcResponse, type Wallet as Wallet, type GetByWalletAddressRequestBody as GetByWalletAddressRequestBody, type WalletUpdateRequestBody as WalletUpdateRequestBody, type WalletBatchItemInput as WalletBatchItemInput, type WalletBatchCreateInput as WalletBatchCreateInput, type WalletBatchCreateResult as WalletBatchCreateResult, type WalletBatchCreateResponse as WalletBatchCreateResponse, type WalletRpcRequestBody as WalletRpcRequestBody, type WalletRpcResponse as WalletRpcResponse, type WalletAuthenticateRequestBody as WalletAuthenticateRequestBody, type PrivateKeyInitInput as PrivateKeyInitInput, type HDInitInput as HDInitInput, type PrivateKeySubmitInput as PrivateKeySubmitInput, type HDSubmitInput as HDSubmitInput, type WalletExportRequestBody as WalletExportRequestBody, type WalletExportResponseBody as WalletExportResponseBody, type TokenTransferSource as TokenTransferSource, type TokenTransferDestination as TokenTransferDestination, type TransferRequestBody as TransferRequestBody, type SuiCommandName as SuiCommandName, type WalletEthereumAsset as WalletEthereumAsset, type WalletSolanaAsset as WalletSolanaAsset, type WalletAsset as WalletAsset, type TransferSentTransactionDetail as TransferSentTransactionDetail, type TransferReceivedTransactionDetail as TransferReceivedTransactionDetail, type TransactionDetail as TransactionDetail, type WalletAPIRegisterAuthorizationKeyInput as WalletAPIRegisterAuthorizationKeyInput, type WalletAPIRevokeAuthorizationKeyInput as WalletAPIRevokeAuthorizationKeyInput, type AuthorizationKeyDashboardResponse as AuthorizationKeyDashboardResponse, type AuthorizationKeyResponse as AuthorizationKeyResponse, type WalletAuthorizationHeaders as WalletAuthorizationHeaders, type WalletInitImportResponse as WalletInitImportResponse, type WalletAuthenticateWithJwtResponse as WalletAuthenticateWithJwtResponse, type WalletCreateWalletsWithRecoveryResponse as WalletCreateWalletsWithRecoveryResponse, type WalletsCursor as WalletsCursor, type WalletCreateParams as WalletCreateParams, type WalletListParams as WalletListParams, type WalletExportParams as WalletExportParams, type WalletInitImportParams as WalletInitImportParams, type WalletRawSignParams as WalletRawSignParams, type WalletRpcParams as WalletRpcParams, type WalletSubmitImportParams as WalletSubmitImportParams, type WalletUpdateParams as WalletUpdateParams, type WalletAuthenticateWithJwtParams as WalletAuthenticateWithJwtParams, type WalletCreateWalletsWithRecoveryParams as WalletCreateWalletsWithRecoveryParams, };
3540
+ export { type WalletRevokeResponse as WalletRevokeResponse, type AdditionalSignerInput as AdditionalSignerInput, type AdditionalSignerItemInput as AdditionalSignerItemInput, type Address as Address, type AmountType as AmountType, type AuthorizationKeyDashboardResponse as AuthorizationKeyDashboardResponse, type AuthorizationKeyResponse as AuthorizationKeyResponse, type AuthorizationKeyRole as AuthorizationKeyRole, type CurveSigningChainType as CurveSigningChainType, type CurveType as CurveType, type CustodialWallet as CustodialWallet, type CustodialWalletChainType as CustodialWalletChainType, type CustodialWalletCreateInput as CustodialWalletCreateInput, type CustodialWalletProvider as CustodialWalletProvider, type CustomTokenTransferSource as CustomTokenTransferSource, type EthereumPersonalSignRpcInput as EthereumPersonalSignRpcInput, type EthereumPersonalSignRpcInputParams as EthereumPersonalSignRpcInputParams, type EthereumPersonalSignRpcResponse as EthereumPersonalSignRpcResponse, type EthereumPersonalSignRpcResponseData as EthereumPersonalSignRpcResponseData, type EthereumRpcInput as EthereumRpcInput, type EthereumRpcResponse as EthereumRpcResponse, type EthereumSecp256k1SignRpcInput as EthereumSecp256k1SignRpcInput, type EthereumSecp256k1SignRpcInputParams as EthereumSecp256k1SignRpcInputParams, type EthereumSecp256k1SignRpcResponse as EthereumSecp256k1SignRpcResponse, type EthereumSecp256k1SignRpcResponseData as EthereumSecp256k1SignRpcResponseData, type EthereumSendCallsCall as EthereumSendCallsCall, type EthereumSendCallsRpcInput as EthereumSendCallsRpcInput, type EthereumSendCallsRpcInputParams as EthereumSendCallsRpcInputParams, type EthereumSendCallsRpcResponse as EthereumSendCallsRpcResponse, type EthereumSendCallsRpcResponseData as EthereumSendCallsRpcResponseData, type EthereumSendTransactionRpcInput as EthereumSendTransactionRpcInput, type EthereumSendTransactionRpcInputParams as EthereumSendTransactionRpcInputParams, type EthereumSendTransactionRpcResponse as EthereumSendTransactionRpcResponse, type EthereumSendTransactionRpcResponseData as EthereumSendTransactionRpcResponseData, type EthereumSign7702Authorization as EthereumSign7702Authorization, type EthereumSign7702AuthorizationRpcInput as EthereumSign7702AuthorizationRpcInput, type EthereumSign7702AuthorizationRpcInputParams as EthereumSign7702AuthorizationRpcInputParams, type EthereumSign7702AuthorizationRpcResponse as EthereumSign7702AuthorizationRpcResponse, type EthereumSign7702AuthorizationRpcResponseData as EthereumSign7702AuthorizationRpcResponseData, type EthereumSignTransactionRpcInput as EthereumSignTransactionRpcInput, type EthereumSignTransactionRpcInputParams as EthereumSignTransactionRpcInputParams, type EthereumSignTransactionRpcResponse as EthereumSignTransactionRpcResponse, type EthereumSignTransactionRpcResponseData as EthereumSignTransactionRpcResponseData, type EthereumSignTypedDataRpcInput as EthereumSignTypedDataRpcInput, type EthereumSignTypedDataRpcInputParams as EthereumSignTypedDataRpcInputParams, type EthereumSignTypedDataRpcResponse as EthereumSignTypedDataRpcResponse, type EthereumSignTypedDataRpcResponseData as EthereumSignTypedDataRpcResponseData, type EthereumSignUserOperationRpcInput as EthereumSignUserOperationRpcInput, type EthereumSignUserOperationRpcInputParams as EthereumSignUserOperationRpcInputParams, type EthereumSignUserOperationRpcResponse as EthereumSignUserOperationRpcResponse, type EthereumSignUserOperationRpcResponseData as EthereumSignUserOperationRpcResponseData, type EthereumTypedDataInput as EthereumTypedDataInput, type ExportPrivateKeyRpcInput as ExportPrivateKeyRpcInput, type ExportPrivateKeyRpcResponse as ExportPrivateKeyRpcResponse, type ExportSeedPhraseRpcInput as ExportSeedPhraseRpcInput, type ExportSeedPhraseRpcResponse as ExportSeedPhraseRpcResponse, type ExportType as ExportType, type ExtendedChainType as ExtendedChainType, type FirstClassChainType as FirstClassChainType, type GetByWalletAddressRequestBody as GetByWalletAddressRequestBody, type HDInitInput as HDInitInput, type HDPath as HDPath, type HDSubmitInput as HDSubmitInput, type HpkeAeadAlgorithm as HpkeAeadAlgorithm, type HpkeEncryption as HpkeEncryption, type HpkeImportConfig as HpkeImportConfig, type Hex as Hex, type NamedTokenTransferSource as NamedTokenTransferSource, type OutputWithPreviousTransactionData as OutputWithPreviousTransactionData, type PolicyInput as PolicyInput, type PrivateKeyExportInput as PrivateKeyExportInput, type PrivateKeyExportResponse as PrivateKeyExportResponse, type PrivateKeyInitInput as PrivateKeyInitInput, type PrivateKeySubmitInput as PrivateKeySubmitInput, type Quantity as Quantity, type RawSignBytesEncoding as RawSignBytesEncoding, type RawSignBytesHashFunction as RawSignBytesHashFunction, type RawSignBytesParams as RawSignBytesParams, type RawSignHashParams as RawSignHashParams, type RawSignInput as RawSignInput, type RawSignInputParams as RawSignInputParams, type RawSignResponse as RawSignResponse, type RawSignResponseData as RawSignResponseData, type RecipientPublicKey as RecipientPublicKey, type SeedPhraseExportInput as SeedPhraseExportInput, type SeedPhraseExportResponse as SeedPhraseExportResponse, type SigningAlgorithm as SigningAlgorithm, type SolanaRpcInput as SolanaRpcInput, type SolanaRpcResponse as SolanaRpcResponse, type SolanaSignAndSendTransactionRpcInput as SolanaSignAndSendTransactionRpcInput, type SolanaSignAndSendTransactionRpcInputParams as SolanaSignAndSendTransactionRpcInputParams, type SolanaSignAndSendTransactionRpcResponse as SolanaSignAndSendTransactionRpcResponse, type SolanaSignAndSendTransactionRpcResponseData as SolanaSignAndSendTransactionRpcResponseData, type SolanaSignMessageRpcInput as SolanaSignMessageRpcInput, type SolanaSignMessageRpcInputParams as SolanaSignMessageRpcInputParams, type SolanaSignMessageRpcResponse as SolanaSignMessageRpcResponse, type SolanaSignMessageRpcResponseData as SolanaSignMessageRpcResponseData, type SolanaSignTransactionRpcInput as SolanaSignTransactionRpcInput, type SolanaSignTransactionRpcInputParams as SolanaSignTransactionRpcInputParams, type SolanaSignTransactionRpcResponse as SolanaSignTransactionRpcResponse, type SolanaSignTransactionRpcResponseData as SolanaSignTransactionRpcResponseData, type SolanaWalletDerivationStrategy as SolanaWalletDerivationStrategy, type SparkBalance as SparkBalance, type SparkClaimStaticDepositRpcInput as SparkClaimStaticDepositRpcInput, type SparkClaimStaticDepositRpcInputParams as SparkClaimStaticDepositRpcInputParams, type SparkClaimStaticDepositRpcResponse as SparkClaimStaticDepositRpcResponse, type SparkClaimStaticDepositRpcResponseData as SparkClaimStaticDepositRpcResponseData, type SparkCreateLightningInvoiceRpcInput as SparkCreateLightningInvoiceRpcInput, type SparkCreateLightningInvoiceRpcInputParams as SparkCreateLightningInvoiceRpcInputParams, type SparkCreateLightningInvoiceRpcResponse as SparkCreateLightningInvoiceRpcResponse, type SparkGetBalanceRpcInput as SparkGetBalanceRpcInput, type SparkGetBalanceRpcResponse as SparkGetBalanceRpcResponse, type SparkGetClaimStaticDepositQuoteRpcInput as SparkGetClaimStaticDepositQuoteRpcInput, type SparkGetClaimStaticDepositQuoteRpcInputParams as SparkGetClaimStaticDepositQuoteRpcInputParams, type SparkGetClaimStaticDepositQuoteRpcResponse as SparkGetClaimStaticDepositQuoteRpcResponse, type SparkGetClaimStaticDepositQuoteRpcResponseData as SparkGetClaimStaticDepositQuoteRpcResponseData, type SparkGetStaticDepositAddressRpcInput as SparkGetStaticDepositAddressRpcInput, type SparkGetStaticDepositAddressRpcResponse as SparkGetStaticDepositAddressRpcResponse, type SparkGetStaticDepositAddressRpcResponseData as SparkGetStaticDepositAddressRpcResponseData, type SparkLightningFee as SparkLightningFee, type SparkLightningReceiveRequest as SparkLightningReceiveRequest, type SparkLightningSendRequest as SparkLightningSendRequest, type SparkNetwork as SparkNetwork, type SparkOutputSelectionStrategy as SparkOutputSelectionStrategy, type SparkPayLightningInvoiceRpcInput as SparkPayLightningInvoiceRpcInput, type SparkPayLightningInvoiceRpcInputParams as SparkPayLightningInvoiceRpcInputParams, type SparkPayLightningInvoiceRpcResponse as SparkPayLightningInvoiceRpcResponse, type SparkRpcInput as SparkRpcInput, type SparkRpcResponse as SparkRpcResponse, type SparkSignMessageWithIdentityKeyRpcInput as SparkSignMessageWithIdentityKeyRpcInput, type SparkSignMessageWithIdentityKeyRpcInputParams as SparkSignMessageWithIdentityKeyRpcInputParams, type SparkSignMessageWithIdentityKeyRpcResponse as SparkSignMessageWithIdentityKeyRpcResponse, type SparkSignMessageWithIdentityKeyRpcResponseData as SparkSignMessageWithIdentityKeyRpcResponseData, type SparkSigningKeyshare as SparkSigningKeyshare, type SparkTokenBalance as SparkTokenBalance, type SparkTransfer as SparkTransfer, type SparkTransferLeaf as SparkTransferLeaf, type SparkTransferRpcInput as SparkTransferRpcInput, type SparkTransferRpcInputParams as SparkTransferRpcInputParams, type SparkTransferRpcResponse as SparkTransferRpcResponse, type SparkTransferTokensRpcInput as SparkTransferTokensRpcInput, type SparkTransferTokensRpcInputParams as SparkTransferTokensRpcInputParams, type SparkTransferTokensRpcResponse as SparkTransferTokensRpcResponse, type SparkTransferTokensRpcResponseData as SparkTransferTokensRpcResponseData, type SparkUserTokenMetadata as SparkUserTokenMetadata, type SparkWalletLeaf as SparkWalletLeaf, type SuiCommandName as SuiCommandName, type TempoAaAuthorization as TempoAaAuthorization, type TempoCall as TempoCall, type TempoFeePayerSignature as TempoFeePayerSignature, type TokenOutput as TokenOutput, type TokenTransferDestination as TokenTransferDestination, type TokenTransferSource as TokenTransferSource, type TransactionDetail as TransactionDetail, type TransactionTokenAddressInput as TransactionTokenAddressInput, type TransferReceivedTransactionDetail as TransferReceivedTransactionDetail, type TransferRequestBody as TransferRequestBody, type TransferSentTransactionDetail as TransferSentTransactionDetail, type TypedDataDomainInputParams as TypedDataDomainInputParams, type TypedDataTypeFieldInput as TypedDataTypeFieldInput, type TypedDataTypesInputParams as TypedDataTypesInputParams, type UnsignedEthereumTransaction as UnsignedEthereumTransaction, type UnsignedStandardEthereumTransaction as UnsignedStandardEthereumTransaction, type UnsignedTempoTransaction as UnsignedTempoTransaction, type UserOperationInput as UserOperationInput, type Wallet as Wallet, type WalletAdditionalSigner as WalletAdditionalSigner, type WalletAdditionalSignerItem as WalletAdditionalSignerItem, type WalletAPIRegisterAuthorizationKeyInput as WalletAPIRegisterAuthorizationKeyInput, type WalletAPIRevokeAuthorizationKeyInput as WalletAPIRevokeAuthorizationKeyInput, type WalletAsset as WalletAsset, type WalletAuthenticateRequestBody as WalletAuthenticateRequestBody, type WalletAuthorizationHeaders as WalletAuthorizationHeaders, type WalletBatchCreateInput as WalletBatchCreateInput, type WalletBatchCreateResponse as WalletBatchCreateResponse, type WalletBatchCreateResult as WalletBatchCreateResult, type WalletBatchItemInput as WalletBatchItemInput, type WalletChainType as WalletChainType, type WalletCustodian as WalletCustodian, type WalletEntropyType as WalletEntropyType, type WalletEthereumAsset as WalletEthereumAsset, type WalletExportRequestBody as WalletExportRequestBody, type WalletExportResponseBody as WalletExportResponseBody, type WalletImportInitResponse as WalletImportInitResponse, type WalletImportSupportedChains as WalletImportSupportedChains, type WalletImportSupportedEntropyTypes as WalletImportSupportedEntropyTypes, type WalletRpcRequestBody as WalletRpcRequestBody, type WalletRpcResponse as WalletRpcResponse, type WalletSolanaAsset as WalletSolanaAsset, type WalletUpdateRequestBody as WalletUpdateRequestBody, type WalletInitImportResponse as WalletInitImportResponse, type WalletAuthenticateWithJwtResponse as WalletAuthenticateWithJwtResponse, type WalletCreateWalletsWithRecoveryResponse as WalletCreateWalletsWithRecoveryResponse, type WalletsCursor as WalletsCursor, type WalletCreateParams as WalletCreateParams, type WalletListParams as WalletListParams, type WalletExportParams as WalletExportParams, type WalletInitImportParams as WalletInitImportParams, type WalletRawSignParams as WalletRawSignParams, type WalletRpcParams as WalletRpcParams, type WalletSubmitImportParams as WalletSubmitImportParams, type WalletUpdateParams as WalletUpdateParams, type WalletAuthenticateWithJwtParams as WalletAuthenticateWithJwtParams, type WalletCreateWalletsWithRecoveryParams as WalletCreateWalletsWithRecoveryParams, };
3344
3541
  export { Transactions as Transactions, type TransactionGetResponse as TransactionGetResponse, type TransactionGetParams as TransactionGetParams, };
3345
3542
  export { Balance as Balance, type BalanceGetResponse as BalanceGetResponse, type BalanceGetParams as BalanceGetParams, };
3346
3543
  }