@coinbase/cdp-sdk 1.47.0 → 1.48.1

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 (76) hide show
  1. package/CHANGELOG.md +14 -0
  2. package/README.md +287 -0
  3. package/_cjs/actions/webhooks/createWebhookSubscription.js.map +1 -1
  4. package/_cjs/client/cdp.js +1 -4
  5. package/_cjs/client/cdp.js.map +1 -1
  6. package/_cjs/client/end-user/endUser.js +42 -89
  7. package/_cjs/client/end-user/endUser.js.map +1 -1
  8. package/_cjs/client/end-user/toEndUserAccount.js +17 -43
  9. package/_cjs/client/end-user/toEndUserAccount.js.map +1 -1
  10. package/_cjs/index.js.map +1 -1
  11. package/_cjs/openapi-client/cdpApiClient.js +0 -32
  12. package/_cjs/openapi-client/cdpApiClient.js.map +1 -1
  13. package/_cjs/openapi-client/generated/coinbaseDeveloperPlatformAPIs.schemas.js +57 -10
  14. package/_cjs/openapi-client/generated/coinbaseDeveloperPlatformAPIs.schemas.js.map +1 -1
  15. package/_cjs/openapi-client/generated/{embedded-wallets-core-functionality/embedded-wallets-core-functionality.js → embedded-wallets/embedded-wallets.js} +45 -97
  16. package/_cjs/openapi-client/generated/embedded-wallets/embedded-wallets.js.map +1 -0
  17. package/_cjs/openapi-client/generated/webhooks/webhooks.js +6 -6
  18. package/_cjs/openapi-client/index.js +2 -2
  19. package/_cjs/openapi-client/index.js.map +1 -1
  20. package/_cjs/version.js +1 -1
  21. package/_esm/actions/webhooks/createWebhookSubscription.js.map +1 -1
  22. package/_esm/client/cdp.js +2 -5
  23. package/_esm/client/cdp.js.map +1 -1
  24. package/_esm/client/end-user/endUser.js +40 -87
  25. package/_esm/client/end-user/endUser.js.map +1 -1
  26. package/_esm/client/end-user/toEndUserAccount.js +17 -43
  27. package/_esm/client/end-user/toEndUserAccount.js.map +1 -1
  28. package/_esm/index.js.map +1 -1
  29. package/_esm/openapi-client/cdpApiClient.js +0 -32
  30. package/_esm/openapi-client/cdpApiClient.js.map +1 -1
  31. package/_esm/openapi-client/generated/coinbaseDeveloperPlatformAPIs.schemas.js +55 -8
  32. package/_esm/openapi-client/generated/coinbaseDeveloperPlatformAPIs.schemas.js.map +1 -1
  33. package/_esm/openapi-client/generated/{embedded-wallets-core-functionality/embedded-wallets-core-functionality.js → embedded-wallets/embedded-wallets.js} +43 -93
  34. package/_esm/openapi-client/generated/embedded-wallets/embedded-wallets.js.map +1 -0
  35. package/_esm/openapi-client/generated/webhooks/webhooks.js +6 -6
  36. package/_esm/openapi-client/index.js +2 -2
  37. package/_esm/openapi-client/index.js.map +1 -1
  38. package/_esm/version.js +1 -1
  39. package/_types/actions/webhooks/createWebhookSubscription.d.ts +1 -1
  40. package/_types/actions/webhooks/createWebhookSubscription.d.ts.map +1 -1
  41. package/_types/client/cdp.d.ts +2 -6
  42. package/_types/client/cdp.d.ts.map +1 -1
  43. package/_types/client/end-user/endUser.d.ts +19 -52
  44. package/_types/client/end-user/endUser.d.ts.map +1 -1
  45. package/_types/client/end-user/endUser.types.d.ts +26 -61
  46. package/_types/client/end-user/endUser.types.d.ts.map +1 -1
  47. package/_types/client/end-user/toEndUserAccount.d.ts +0 -2
  48. package/_types/client/end-user/toEndUserAccount.d.ts.map +1 -1
  49. package/_types/index.d.ts +1 -1
  50. package/_types/index.d.ts.map +1 -1
  51. package/_types/openapi-client/cdpApiClient.d.ts.map +1 -1
  52. package/_types/openapi-client/generated/coinbaseDeveloperPlatformAPIs.schemas.d.ts +490 -79
  53. package/_types/openapi-client/generated/coinbaseDeveloperPlatformAPIs.schemas.d.ts.map +1 -1
  54. package/_types/openapi-client/generated/embedded-wallets/embedded-wallets.d.ts +151 -0
  55. package/_types/openapi-client/generated/embedded-wallets/embedded-wallets.d.ts.map +1 -0
  56. package/_types/openapi-client/generated/webhooks/webhooks.d.ts +6 -6
  57. package/_types/openapi-client/index.d.ts +14 -45
  58. package/_types/openapi-client/index.d.ts.map +1 -1
  59. package/_types/version.d.ts +1 -1
  60. package/actions/webhooks/createWebhookSubscription.ts +6 -1
  61. package/client/cdp.ts +3 -8
  62. package/client/end-user/endUser.ts +85 -187
  63. package/client/end-user/endUser.types.ts +28 -69
  64. package/client/end-user/toEndUserAccount.ts +63 -152
  65. package/index.ts +0 -4
  66. package/openapi-client/cdpApiClient.ts +0 -34
  67. package/openapi-client/generated/coinbaseDeveloperPlatformAPIs.schemas.ts +551 -85
  68. package/openapi-client/generated/{embedded-wallets-core-functionality/embedded-wallets-core-functionality.ts → embedded-wallets/embedded-wallets.ts} +86 -249
  69. package/openapi-client/generated/webhooks/webhooks.ts +6 -6
  70. package/openapi-client/index.ts +2 -2
  71. package/package.json +1 -1
  72. package/version.ts +1 -1
  73. package/_cjs/openapi-client/generated/embedded-wallets-core-functionality/embedded-wallets-core-functionality.js.map +0 -1
  74. package/_esm/openapi-client/generated/embedded-wallets-core-functionality/embedded-wallets-core-functionality.js.map +0 -1
  75. package/_types/openapi-client/generated/embedded-wallets-core-functionality/embedded-wallets-core-functionality.d.ts +0 -312
  76. package/_types/openapi-client/generated/embedded-wallets-core-functionality/embedded-wallets-core-functionality.d.ts.map +0 -1
@@ -240,7 +240,9 @@ export interface ListResponse {
240
240
  export type ErrorType = (typeof ErrorType)[keyof typeof ErrorType];
241
241
  export declare const ErrorType: {
242
242
  readonly already_exists: "already_exists";
243
+ readonly authorization_expired: "authorization_expired";
243
244
  readonly bad_gateway: "bad_gateway";
245
+ readonly capture_expired: "capture_expired";
244
246
  readonly client_closed_request: "client_closed_request";
245
247
  readonly faucet_limit_exceeded: "faucet_limit_exceeded";
246
248
  readonly forbidden: "forbidden";
@@ -271,6 +273,7 @@ export declare const ErrorType: {
271
273
  readonly document_verification_failed: "document_verification_failed";
272
274
  readonly recipient_allowlist_violation: "recipient_allowlist_violation";
273
275
  readonly recipient_allowlist_pending: "recipient_allowlist_pending";
276
+ readonly refund_expired: "refund_expired";
274
277
  readonly travel_rules_recipient_violation: "travel_rules_recipient_violation";
275
278
  readonly source_account_invalid: "source_account_invalid";
276
279
  readonly target_account_invalid: "target_account_invalid";
@@ -320,26 +323,12 @@ export interface Error {
320
323
  /** A link to the corresponding error documentation. */
321
324
  errorLink?: Url;
322
325
  }
323
- export interface EvmAccount {
324
- /**
325
- * The 0x-prefixed, checksum EVM address.
326
- * @pattern ^0x[0-9a-fA-F]{40}$
327
- */
328
- address: string;
329
- /**
330
- * An optional name for the account.
331
- Account names can consist of alphanumeric characters and hyphens, and be between 2 and 36 characters long.
332
- Account names are guaranteed to be unique across all EVM accounts in the developer's CDP Project.
333
- * @pattern ^[A-Za-z0-9][A-Za-z0-9-]{0,34}[A-Za-z0-9]$
334
- */
335
- name?: string;
336
- /** The list of policy IDs that apply to the account. This will include both the project-level policy and the account-level policy, if one exists. */
337
- policies?: string[];
338
- /** The UTC ISO 8601 timestamp at which the account was created. */
339
- createdAt?: string;
340
- /** The UTC ISO 8601 timestamp at which the account was last updated. */
341
- updatedAt?: string;
342
- }
326
+ /**
327
+ * The symbol of the asset (e.g., eth, usd, usdc, usdt).
328
+ * @minLength 1
329
+ * @maxLength 42
330
+ */
331
+ export type Asset = string;
343
332
  /**
344
333
  * The domain of the EIP-712 typed data.
345
334
  */
@@ -399,61 +388,6 @@ export declare const EvmEip7702DelegationNetwork: {
399
388
  readonly ethereum: "ethereum";
400
389
  readonly "ethereum-sepolia": "ethereum-sepolia";
401
390
  };
402
- /**
403
- * The current status of the delegation operation.
404
- UNSPECIFIED means the status has not been set. PENDING means the operation has been created but not yet submitted. SUBMITTED means the operation has been submitted to the network. COMPLETED means the operation has completed successfully. FAILED means the operation has failed.
405
- */
406
- export type EvmEip7702DelegationOperationStatus = (typeof EvmEip7702DelegationOperationStatus)[keyof typeof EvmEip7702DelegationOperationStatus];
407
- export declare const EvmEip7702DelegationOperationStatus: {
408
- readonly UNSPECIFIED: "UNSPECIFIED";
409
- readonly PENDING: "PENDING";
410
- readonly SUBMITTED: "SUBMITTED";
411
- readonly COMPLETED: "COMPLETED";
412
- readonly FAILED: "FAILED";
413
- };
414
- /**
415
- * The status of an EIP-7702 delegation operation.
416
- */
417
- export interface EvmEip7702DelegationOperation {
418
- /** The unique identifier for the delegation operation. */
419
- delegationOperationId: string;
420
- /** The current status of the delegation operation.
421
- UNSPECIFIED means the status has not been set. PENDING means the operation has been created but not yet submitted. SUBMITTED means the operation has been submitted to the network. COMPLETED means the operation has completed successfully. FAILED means the operation has failed. */
422
- status: EvmEip7702DelegationOperationStatus;
423
- /**
424
- * The hash of the delegation transaction, if available. Present once the transaction has been submitted to the network.
425
- * @pattern ^0x[0-9a-fA-F]{64}$
426
- */
427
- transactionHash?: string;
428
- network: EvmEip7702DelegationNetwork;
429
- /**
430
- * The address the account has delegated to, if any. Only present when the account has an active delegation.
431
- * @pattern ^0x[0-9a-fA-F]{40}$
432
- */
433
- delegateAddress?: string;
434
- }
435
- export interface EvmSmartAccount {
436
- /**
437
- * The 0x-prefixed, checksum address of the Smart Account.
438
- * @pattern ^0x[0-9a-fA-F]{40}$
439
- */
440
- address: string;
441
- /** Today, only a single owner can be set for a Smart Account, but this is an array to allow having multiple owners in the future. The address is a 0x-prefixed, checksum address. */
442
- owners: string[];
443
- /**
444
- * An optional name for the account.
445
- Account names can consist of alphanumeric characters and hyphens, and be between 2 and 36 characters long.
446
- Account names are guaranteed to be unique across all Smart Accounts in the developer's CDP Project.
447
- * @pattern ^[A-Za-z0-9][A-Za-z0-9-]{0,34}[A-Za-z0-9]$
448
- */
449
- name?: string;
450
- /** The list of policy IDs that apply to the smart account. This will include both the project-level policy and the account-level policy, if one exists. */
451
- policies?: string[];
452
- /** The UTC ISO 8601 timestamp at which the account was created. */
453
- createdAt?: string;
454
- /** The UTC ISO 8601 timestamp at which the account was last updated. */
455
- updatedAt?: string;
456
- }
457
391
  /**
458
392
  * The network the user operation is for.
459
393
  */
@@ -549,6 +483,81 @@ export interface EvmUserOperation {
549
483
  /** The list of receipts associated with the user operation. */
550
484
  receipts?: UserOperationReceipt[];
551
485
  }
486
+ export interface EvmAccount {
487
+ /**
488
+ * The 0x-prefixed, checksum EVM address.
489
+ * @pattern ^0x[0-9a-fA-F]{40}$
490
+ */
491
+ address: string;
492
+ /**
493
+ * An optional name for the account.
494
+ Account names can consist of alphanumeric characters and hyphens, and be between 2 and 36 characters long.
495
+ Account names are guaranteed to be unique across all EVM accounts in the developer's CDP Project.
496
+ * @pattern ^[A-Za-z0-9][A-Za-z0-9-]{0,34}[A-Za-z0-9]$
497
+ */
498
+ name?: string;
499
+ /** The list of policy IDs that apply to the account. This will include both the project-level policy and the account-level policy, if one exists. */
500
+ policies?: string[];
501
+ /** The UTC ISO 8601 timestamp at which the account was created. */
502
+ createdAt?: string;
503
+ /** The UTC ISO 8601 timestamp at which the account was last updated. */
504
+ updatedAt?: string;
505
+ }
506
+ /**
507
+ * The current status of the delegation operation.
508
+ UNSPECIFIED means the status has not been set. PENDING means the operation has been created but not yet submitted. SUBMITTED means the operation has been submitted to the network. COMPLETED means the operation has completed successfully. FAILED means the operation has failed.
509
+ */
510
+ export type EvmEip7702DelegationOperationStatus = (typeof EvmEip7702DelegationOperationStatus)[keyof typeof EvmEip7702DelegationOperationStatus];
511
+ export declare const EvmEip7702DelegationOperationStatus: {
512
+ readonly UNSPECIFIED: "UNSPECIFIED";
513
+ readonly PENDING: "PENDING";
514
+ readonly SUBMITTED: "SUBMITTED";
515
+ readonly COMPLETED: "COMPLETED";
516
+ readonly FAILED: "FAILED";
517
+ };
518
+ /**
519
+ * The status of an EIP-7702 delegation operation.
520
+ */
521
+ export interface EvmEip7702DelegationOperation {
522
+ /** The unique identifier for the delegation operation. */
523
+ delegationOperationId: string;
524
+ /** The current status of the delegation operation.
525
+ UNSPECIFIED means the status has not been set. PENDING means the operation has been created but not yet submitted. SUBMITTED means the operation has been submitted to the network. COMPLETED means the operation has completed successfully. FAILED means the operation has failed. */
526
+ status: EvmEip7702DelegationOperationStatus;
527
+ /**
528
+ * The hash of the delegation transaction, if available. Present once the transaction has been submitted to the network.
529
+ * @pattern ^0x[0-9a-fA-F]{64}$
530
+ */
531
+ transactionHash?: string;
532
+ network: EvmEip7702DelegationNetwork;
533
+ /**
534
+ * The address the account has delegated to, if any. Only present when the account has an active delegation.
535
+ * @pattern ^0x[0-9a-fA-F]{40}$
536
+ */
537
+ delegateAddress?: string;
538
+ }
539
+ export interface EvmSmartAccount {
540
+ /**
541
+ * The 0x-prefixed, checksum address of the Smart Account.
542
+ * @pattern ^0x[0-9a-fA-F]{40}$
543
+ */
544
+ address: string;
545
+ /** Today, only a single owner can be set for a Smart Account, but this is an array to allow having multiple owners in the future. The address is a 0x-prefixed, checksum address. */
546
+ owners: string[];
547
+ /**
548
+ * An optional name for the account.
549
+ Account names can consist of alphanumeric characters and hyphens, and be between 2 and 36 characters long.
550
+ Account names are guaranteed to be unique across all Smart Accounts in the developer's CDP Project.
551
+ * @pattern ^[A-Za-z0-9][A-Za-z0-9-]{0,34}[A-Za-z0-9]$
552
+ */
553
+ name?: string;
554
+ /** The list of policy IDs that apply to the smart account. This will include both the project-level policy and the account-level policy, if one exists. */
555
+ policies?: string[];
556
+ /** The UTC ISO 8601 timestamp at which the account was created. */
557
+ createdAt?: string;
558
+ /** The UTC ISO 8601 timestamp at which the account was last updated. */
559
+ updatedAt?: string;
560
+ }
552
561
  /**
553
562
  * The network the spend permission is on.
554
563
  */
@@ -1242,8 +1251,11 @@ export declare const EvmNetworkCriterionNetworksItem: {
1242
1251
  readonly polygon: "polygon";
1243
1252
  readonly optimism: "optimism";
1244
1253
  readonly arbitrum: "arbitrum";
1254
+ readonly "arbitrum-sepolia": "arbitrum-sepolia";
1245
1255
  readonly zora: "zora";
1246
1256
  readonly bnb: "bnb";
1257
+ readonly world: "world";
1258
+ readonly "world-sepolia": "world-sepolia";
1247
1259
  };
1248
1260
  /**
1249
1261
  * The operator to use for the comparison. The transaction's intended `network` will be on the left-hand side of the operator, and the `networks` field will be on the right-hand side.
@@ -2496,9 +2508,9 @@ export interface WebhookSubscriptionResponse {
2496
2508
  updatedAt?: string;
2497
2509
  /** Description of the webhook subscription. */
2498
2510
  description?: Description;
2499
- /** Types of events to subscribe to. Event types follow a three-part dot-separated format:
2511
+ /** Types of events to subscribe to. Event types follow a dot-separated format:
2500
2512
  service.resource.verb (e.g., "onchain.activity.detected", "wallet.activity.detected", "onramp.transaction.created",
2501
- "acceptance.payment_session").
2513
+ "acceptance.payment_session.authorization_succeeded").
2502
2514
  */
2503
2515
  eventTypes: string[];
2504
2516
  /** Whether the subscription is enabled. */
@@ -2543,9 +2555,9 @@ export type WebhookSubscriptionRequestLabels = {
2543
2555
  export interface WebhookSubscriptionRequest {
2544
2556
  /** Description of the webhook subscription. */
2545
2557
  description?: Description;
2546
- /** Types of events to subscribe to. Event types follow a three-part dot-separated format:
2558
+ /** Types of events to subscribe to. Event types follow a dot-separated format:
2547
2559
  service.resource.verb (e.g., "onchain.activity.detected", "wallet.activity.detected", "onramp.transaction.created",
2548
- "acceptance.payment_session").
2560
+ "acceptance.payment_session.authorization_succeeded").
2549
2561
  The subscription will only receive events matching these types AND the label filter(s).
2550
2562
  */
2551
2563
  eventTypes: string[];
@@ -3450,6 +3462,24 @@ Refer to our [Idempotency docs](https://docs.cdp.coinbase.com/api-reference/v2/i
3450
3462
 
3451
3463
  */
3452
3464
  export type IdempotencyKeyParameter = string;
3465
+ /**
3466
+ * A JWT signed using your Wallet Secret, encoded in base64. Refer to the
3467
+ [Generate Wallet Token](https://docs.cdp.coinbase.com/api-reference/v2/authentication#2-generate-wallet-token)
3468
+ section of our Authentication docs for more details on how to generate your Wallet Token.
3469
+
3470
+ */
3471
+ export type XWalletAuthOptionalParameter = string;
3472
+ /**
3473
+ * A JWT signed using your Wallet Secret, encoded in base64. Refer to the
3474
+ [Generate Wallet Token](https://docs.cdp.coinbase.com/api-reference/v2/authentication#2-generate-wallet-token)
3475
+ section of our Authentication docs for more details on how to generate your Wallet Token.
3476
+
3477
+ */
3478
+ export type XDeveloperAuthParameter = string;
3479
+ /**
3480
+ * The ID of the CDP Project. Required for end users authenticated using custom auth (i.e. a non-CDP JWT provider).
3481
+ */
3482
+ export type ProjectIDOptionalParameter = string;
3453
3483
  /**
3454
3484
  * The number of resources to return per page.
3455
3485
  */
@@ -3560,6 +3590,384 @@ export type ImportEndUserBody = {
3560
3590
  /** The type of key being imported. Determines what type of account will be associated for the end user. */
3561
3591
  keyType: ImportEndUserBodyKeyType;
3562
3592
  };
3593
+ export type SignEvmTransactionWithEndUserAccountParams = {
3594
+ /**
3595
+ * The ID of the CDP Project. Required for end users authenticated using custom auth (i.e. a non-CDP JWT provider).
3596
+ * @pattern ^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$
3597
+ */
3598
+ projectID?: ProjectIDOptionalParameter;
3599
+ };
3600
+ export type SignEvmTransactionWithEndUserAccountBody = {
3601
+ /**
3602
+ * The 0x-prefixed address of the EVM account belonging to the end user.
3603
+ * @pattern ^0x[0-9a-fA-F]{40}$
3604
+ */
3605
+ address: string;
3606
+ /** The RLP-encoded transaction to sign, as a 0x-prefixed hex string. */
3607
+ transaction: string;
3608
+ /**
3609
+ * Required when not using delegated signing. The ID of the Temporary Wallet Secret that was used to sign the X-Wallet-Auth Header.
3610
+ * @pattern ^[a-zA-Z0-9-]{1,100}$
3611
+ */
3612
+ walletSecretId?: string;
3613
+ };
3614
+ export type SignEvmTransactionWithEndUserAccount200 = {
3615
+ /** The RLP-encoded signed transaction, as a 0x-prefixed hex string. */
3616
+ signedTransaction: string;
3617
+ };
3618
+ export type SendEvmTransactionWithEndUserAccountParams = {
3619
+ /**
3620
+ * The ID of the CDP Project. Required for end users authenticated using custom auth (i.e. a non-CDP JWT provider).
3621
+ * @pattern ^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$
3622
+ */
3623
+ projectID?: ProjectIDOptionalParameter;
3624
+ };
3625
+ /**
3626
+ * The network to send the transaction to.
3627
+ */
3628
+ export type SendEvmTransactionWithEndUserAccountBodyNetwork = (typeof SendEvmTransactionWithEndUserAccountBodyNetwork)[keyof typeof SendEvmTransactionWithEndUserAccountBodyNetwork];
3629
+ export declare const SendEvmTransactionWithEndUserAccountBodyNetwork: {
3630
+ readonly base: "base";
3631
+ readonly "base-sepolia": "base-sepolia";
3632
+ readonly ethereum: "ethereum";
3633
+ readonly "ethereum-sepolia": "ethereum-sepolia";
3634
+ readonly avalanche: "avalanche";
3635
+ readonly polygon: "polygon";
3636
+ readonly optimism: "optimism";
3637
+ readonly arbitrum: "arbitrum";
3638
+ readonly "arbitrum-sepolia": "arbitrum-sepolia";
3639
+ readonly world: "world";
3640
+ readonly "world-sepolia": "world-sepolia";
3641
+ };
3642
+ export type SendEvmTransactionWithEndUserAccountBody = {
3643
+ /**
3644
+ * The 0x-prefixed address of the EVM account belonging to the end user.
3645
+ * @pattern ^0x[0-9a-fA-F]{40}$
3646
+ */
3647
+ address: string;
3648
+ /** The network to send the transaction to. */
3649
+ network: SendEvmTransactionWithEndUserAccountBodyNetwork;
3650
+ /**
3651
+ * Required when not using delegated signing. The ID of the Temporary Wallet Secret that was used to sign the X-Wallet-Auth Header.
3652
+ * @pattern ^[a-zA-Z0-9-]{1,100}$
3653
+ */
3654
+ walletSecretId?: string;
3655
+ /** The RLP-encoded transaction to sign and send, as a 0x-prefixed hex string. */
3656
+ transaction: string;
3657
+ };
3658
+ export type SendEvmTransactionWithEndUserAccount200 = {
3659
+ /** The hash of the transaction, as a 0x-prefixed hex string. */
3660
+ transactionHash: string;
3661
+ };
3662
+ export type SendEvmAssetWithEndUserAccountParams = {
3663
+ /**
3664
+ * The ID of the CDP Project. Required for end users authenticated using custom auth (i.e. a non-CDP JWT provider).
3665
+ * @pattern ^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$
3666
+ */
3667
+ projectID?: ProjectIDOptionalParameter;
3668
+ };
3669
+ /**
3670
+ * The EVM network to send USDC on.
3671
+ */
3672
+ export type SendEvmAssetWithEndUserAccountBodyNetwork = (typeof SendEvmAssetWithEndUserAccountBodyNetwork)[keyof typeof SendEvmAssetWithEndUserAccountBodyNetwork];
3673
+ export declare const SendEvmAssetWithEndUserAccountBodyNetwork: {
3674
+ readonly base: "base";
3675
+ readonly "base-sepolia": "base-sepolia";
3676
+ readonly ethereum: "ethereum";
3677
+ readonly "ethereum-sepolia": "ethereum-sepolia";
3678
+ readonly avalanche: "avalanche";
3679
+ readonly polygon: "polygon";
3680
+ readonly optimism: "optimism";
3681
+ readonly arbitrum: "arbitrum";
3682
+ readonly "arbitrum-sepolia": "arbitrum-sepolia";
3683
+ readonly world: "world";
3684
+ readonly "world-sepolia": "world-sepolia";
3685
+ };
3686
+ export type SendEvmAssetWithEndUserAccountBody = {
3687
+ /**
3688
+ * The 0x-prefixed address of the recipient.
3689
+ * @pattern ^0x[0-9a-fA-F]{40}$
3690
+ */
3691
+ to: BlockchainAddress;
3692
+ /**
3693
+ * The amount of USDC to send as a decimal string (e.g., "1.5" or "25.50").
3694
+ * @minLength 1
3695
+ * @maxLength 32
3696
+ */
3697
+ amount: string;
3698
+ /** The EVM network to send USDC on. */
3699
+ network: SendEvmAssetWithEndUserAccountBodyNetwork;
3700
+ /** Whether to use CDP Paymaster to sponsor gas fees. Only applicable for EVM Smart Accounts. When true, the transaction gas will be paid by the Paymaster, allowing users to send USDC without holding native gas tokens. Ignored for EOA accounts. Cannot be used together with `paymasterUrl`. */
3701
+ useCdpPaymaster?: boolean;
3702
+ /** Optional custom Paymaster URL to use for gas sponsorship. Only applicable for EVM Smart Accounts. This allows you to use your own Paymaster service instead of CDP's Paymaster. Cannot be used together with `useCdpPaymaster`. */
3703
+ paymasterUrl?: Url;
3704
+ /**
3705
+ * Required when not using delegated signing. The ID of the Temporary Wallet Secret that was used to sign the X-Wallet-Auth Header.
3706
+ * @pattern ^[a-zA-Z0-9-]{1,100}$
3707
+ */
3708
+ walletSecretId?: string;
3709
+ };
3710
+ export type SendEvmAssetWithEndUserAccount200 = {
3711
+ /**
3712
+ * The hash of the transaction, as a 0x-prefixed hex string. Populated for EOA accounts. Null for Smart Accounts (use userOpHash instead).
3713
+ * @nullable
3714
+ */
3715
+ transactionHash?: string | null;
3716
+ /**
3717
+ * The hash of the user operation, as a 0x-prefixed hex string. Populated for Smart Accounts. Null for EOA accounts (use transactionHash instead).
3718
+ * @nullable
3719
+ */
3720
+ userOpHash?: string | null;
3721
+ };
3722
+ export type SignEvmMessageWithEndUserAccountParams = {
3723
+ /**
3724
+ * The ID of the CDP Project. Required for end users authenticated using custom auth (i.e. a non-CDP JWT provider).
3725
+ * @pattern ^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$
3726
+ */
3727
+ projectID?: ProjectIDOptionalParameter;
3728
+ };
3729
+ export type SignEvmMessageWithEndUserAccountBody = {
3730
+ /**
3731
+ * The 0x-prefixed address of the EVM account belonging to the end user.
3732
+ * @pattern ^0x[0-9a-fA-F]{40}$
3733
+ */
3734
+ address: string;
3735
+ /** The message to sign. */
3736
+ message: string;
3737
+ /**
3738
+ * Required when not using delegated signing. The ID of the Temporary Wallet Secret that was used to sign the X-Wallet-Auth Header.
3739
+ * @pattern ^[a-zA-Z0-9-]{1,100}$
3740
+ */
3741
+ walletSecretId?: string;
3742
+ };
3743
+ export type SignEvmMessageWithEndUserAccount200 = {
3744
+ /** The signature of the message, as a 0x-prefixed hex string. */
3745
+ signature: string;
3746
+ };
3747
+ export type SignEvmTypedDataWithEndUserAccountParams = {
3748
+ /**
3749
+ * The ID of the CDP Project. Required for end users authenticated using custom auth (i.e. a non-CDP JWT provider).
3750
+ * @pattern ^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$
3751
+ */
3752
+ projectID?: ProjectIDOptionalParameter;
3753
+ };
3754
+ export type SignEvmTypedDataWithEndUserAccountBody = {
3755
+ /**
3756
+ * The 0x-prefixed address of the EVM account belonging to the end user.
3757
+ * @pattern ^0x[0-9a-fA-F]{40}$
3758
+ */
3759
+ address: string;
3760
+ typedData: EIP712Message;
3761
+ /**
3762
+ * Required when not using delegated signing. The ID of the Temporary Wallet Secret that was used to sign the X-Wallet-Auth Header.
3763
+ * @pattern ^[a-zA-Z0-9-]{1,100}$
3764
+ */
3765
+ walletSecretId?: string;
3766
+ };
3767
+ export type SignEvmTypedDataWithEndUserAccount200 = {
3768
+ /** The signature of the typed data, as a 0x-prefixed hex string. */
3769
+ signature: string;
3770
+ };
3771
+ export type GetDelegationForEndUserParams = {
3772
+ /**
3773
+ * The ID of the CDP Project. Required for end users authenticated using custom auth (i.e. a non-CDP JWT provider).
3774
+ * @pattern ^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$
3775
+ */
3776
+ projectID?: ProjectIDOptionalParameter;
3777
+ };
3778
+ export type GetDelegationForEndUser200 = {
3779
+ /** The date until which the delegation is valid. */
3780
+ expiresAt: string;
3781
+ };
3782
+ export type RevokeDelegationForEndUserBody = {
3783
+ /**
3784
+ * When revoking with a wallet authentication scheme, the ID of the Temporary Wallet Secret that was used to sign the X-Wallet-Auth Header.
3785
+ * @pattern ^[a-zA-Z0-9-]{1,100}$
3786
+ */
3787
+ walletSecretId?: string;
3788
+ };
3789
+ export type CreateEvmEip7702DelegationWithEndUserAccountParams = {
3790
+ /**
3791
+ * The ID of the CDP Project. Required for end users authenticated using custom auth (i.e. a non-CDP JWT provider).
3792
+ * @pattern ^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$
3793
+ */
3794
+ projectID?: ProjectIDOptionalParameter;
3795
+ };
3796
+ export type CreateEvmEip7702DelegationWithEndUserAccountBody = {
3797
+ /**
3798
+ * The 0x-prefixed address of the EVM account to delegate.
3799
+ * @pattern ^0x[0-9a-fA-F]{40}$
3800
+ */
3801
+ address: string;
3802
+ network: EvmEip7702DelegationNetwork;
3803
+ /** Whether to configure spend permissions for the upgraded, delegated account. When enabled, the account can grant permissions for third parties to spend on its behalf. */
3804
+ enableSpendPermissions?: boolean;
3805
+ /**
3806
+ * Required when not using delegated signing. The ID of the Temporary Wallet Secret that was used to sign the X-Wallet-Auth Header.
3807
+ * @pattern ^[a-zA-Z0-9-]{1,100}$
3808
+ */
3809
+ walletSecretId?: string;
3810
+ };
3811
+ export type CreateEvmEip7702DelegationWithEndUserAccount201 = {
3812
+ /** The unique identifier for the delegation operation. Use this to poll the operation status. */
3813
+ delegationOperationId: string;
3814
+ };
3815
+ export type SendUserOperationWithEndUserAccountParams = {
3816
+ /**
3817
+ * The ID of the CDP Project. Required for end users authenticated using custom auth (i.e. a non-CDP JWT provider).
3818
+ * @pattern ^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$
3819
+ */
3820
+ projectID?: ProjectIDOptionalParameter;
3821
+ };
3822
+ export type SendUserOperationWithEndUserAccountBody = {
3823
+ network: EvmUserOperationNetwork;
3824
+ /** The list of calls to make from the Smart Account. */
3825
+ calls: EvmCall[];
3826
+ /** Whether to use the CDP Paymaster for the user operation. */
3827
+ useCdpPaymaster: boolean;
3828
+ /** The URL of the paymaster to use for the user operation. If using the CDP Paymaster, use the `useCdpPaymaster` option. */
3829
+ paymasterUrl?: Url;
3830
+ /**
3831
+ * Required when not using delegated signing. The ID of the Temporary Wallet Secret that was used to sign the X-Wallet-Auth Header.
3832
+ * @pattern ^[a-zA-Z0-9-]{1,100}$
3833
+ */
3834
+ walletSecretId?: string;
3835
+ /**
3836
+ * The EIP-8021 data suffix (hex-encoded) that enables transaction attribution for the user operation.
3837
+ * @pattern ^0x[0-9a-fA-F]+$
3838
+ */
3839
+ dataSuffix?: string;
3840
+ };
3841
+ export type SignSolanaMessageWithEndUserAccountParams = {
3842
+ /**
3843
+ * The ID of the CDP Project. Required for end users authenticated using custom auth (i.e. a non-CDP JWT provider).
3844
+ * @pattern ^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$
3845
+ */
3846
+ projectID?: ProjectIDOptionalParameter;
3847
+ };
3848
+ export type SignSolanaMessageWithEndUserAccountBody = {
3849
+ /**
3850
+ * The base58 encoded address of the Solana account belonging to the end user.
3851
+ * @pattern ^[1-9A-HJ-NP-Za-km-z]{32,44}$
3852
+ */
3853
+ address: string;
3854
+ /** The base64 encoded arbitrary message to sign. */
3855
+ message: string;
3856
+ /**
3857
+ * Required when not using delegated signing. The ID of the Temporary Wallet Secret that was used to sign the X-Wallet-Auth Header.
3858
+ * @pattern ^[a-zA-Z0-9-]{1,100}$
3859
+ */
3860
+ walletSecretId?: string;
3861
+ };
3862
+ export type SignSolanaMessageWithEndUserAccount200 = {
3863
+ /** The signature of the message, as a base58 encoded string. */
3864
+ signature: string;
3865
+ };
3866
+ export type SignSolanaTransactionWithEndUserAccountParams = {
3867
+ /**
3868
+ * The ID of the CDP Project. Required for end users authenticated using custom auth (i.e. a non-CDP JWT provider).
3869
+ * @pattern ^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$
3870
+ */
3871
+ projectID?: ProjectIDOptionalParameter;
3872
+ };
3873
+ export type SignSolanaTransactionWithEndUserAccountBody = {
3874
+ /**
3875
+ * The base58 encoded address of the Solana account belonging to the end user.
3876
+ * @pattern ^[1-9A-HJ-NP-Za-km-z]{32,44}$
3877
+ */
3878
+ address: string;
3879
+ /** The base64 encoded transaction to sign. */
3880
+ transaction: string;
3881
+ /**
3882
+ * Required when not using delegated signing. The ID of the Temporary Wallet Secret that was used to sign the X-Wallet-Auth Header.
3883
+ * @pattern ^[a-zA-Z0-9-]{1,100}$
3884
+ */
3885
+ walletSecretId?: string;
3886
+ };
3887
+ export type SignSolanaTransactionWithEndUserAccount200 = {
3888
+ /** The base64 encoded signed transaction. */
3889
+ signedTransaction: string;
3890
+ };
3891
+ export type SendSolanaTransactionWithEndUserAccountParams = {
3892
+ /**
3893
+ * The ID of the CDP Project. Required for end users authenticated using custom auth (i.e. a non-CDP JWT provider).
3894
+ * @pattern ^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$
3895
+ */
3896
+ projectID?: ProjectIDOptionalParameter;
3897
+ };
3898
+ /**
3899
+ * The Solana network to send the transaction to.
3900
+ */
3901
+ export type SendSolanaTransactionWithEndUserAccountBodyNetwork = (typeof SendSolanaTransactionWithEndUserAccountBodyNetwork)[keyof typeof SendSolanaTransactionWithEndUserAccountBodyNetwork];
3902
+ export declare const SendSolanaTransactionWithEndUserAccountBodyNetwork: {
3903
+ readonly solana: "solana";
3904
+ readonly "solana-devnet": "solana-devnet";
3905
+ };
3906
+ export type SendSolanaTransactionWithEndUserAccountBody = {
3907
+ /**
3908
+ * The base58 encoded address of the Solana account belonging to the end user.
3909
+ * @pattern ^[1-9A-HJ-NP-Za-km-z]{32,44}$
3910
+ */
3911
+ address: string;
3912
+ /** The Solana network to send the transaction to. */
3913
+ network: SendSolanaTransactionWithEndUserAccountBodyNetwork;
3914
+ /**
3915
+ * Required when not using delegated signing. The ID of the Temporary Wallet Secret that was used to sign the X-Wallet-Auth Header.
3916
+ * @pattern ^[a-zA-Z0-9-]{1,100}$
3917
+ */
3918
+ walletSecretId?: string;
3919
+ /** The base64 encoded transaction to sign and send. This transaction can contain multiple instructions for native Solana batching. */
3920
+ transaction: string;
3921
+ /** Whether transaction fees should be sponsored by CDP. When true, CDP sponsors the transaction fees on behalf of the end user. When false, the end user is responsible for paying the transaction fees. */
3922
+ useCdpSponsor?: boolean;
3923
+ };
3924
+ export type SendSolanaTransactionWithEndUserAccount200 = {
3925
+ /** The base58 encoded transaction signature. */
3926
+ transactionSignature: string;
3927
+ };
3928
+ export type SendSolanaAssetWithEndUserAccountParams = {
3929
+ /**
3930
+ * The ID of the CDP Project. Required for end users authenticated using custom auth (i.e. a non-CDP JWT provider).
3931
+ * @pattern ^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$
3932
+ */
3933
+ projectID?: ProjectIDOptionalParameter;
3934
+ };
3935
+ /**
3936
+ * The Solana network to send USDC on.
3937
+ */
3938
+ export type SendSolanaAssetWithEndUserAccountBodyNetwork = (typeof SendSolanaAssetWithEndUserAccountBodyNetwork)[keyof typeof SendSolanaAssetWithEndUserAccountBodyNetwork];
3939
+ export declare const SendSolanaAssetWithEndUserAccountBodyNetwork: {
3940
+ readonly solana: "solana";
3941
+ readonly "solana-devnet": "solana-devnet";
3942
+ };
3943
+ export type SendSolanaAssetWithEndUserAccountBody = {
3944
+ /**
3945
+ * The base58 encoded address of the recipient.
3946
+ * @pattern ^[1-9A-HJ-NP-Za-km-z]{32,44}$
3947
+ */
3948
+ to: BlockchainAddress;
3949
+ /**
3950
+ * The amount of USDC to send as a decimal string (e.g., "1.5" or "25.50").
3951
+ * @minLength 1
3952
+ * @maxLength 32
3953
+ */
3954
+ amount: string;
3955
+ /** The Solana network to send USDC on. */
3956
+ network: SendSolanaAssetWithEndUserAccountBodyNetwork;
3957
+ /** Whether to automatically create an Associated Token Account (ATA) for the recipient if it doesn't exist. When true, the sender pays the rent-exempt minimum to create the recipient's USDC ATA. When false, the transaction will fail if the recipient doesn't have a USDC ATA. */
3958
+ createRecipientAta?: boolean;
3959
+ /**
3960
+ * Required when not using delegated signing. The ID of the Temporary Wallet Secret that was used to sign the X-Wallet-Auth Header.
3961
+ * @pattern ^[a-zA-Z0-9-]{1,100}$
3962
+ */
3963
+ walletSecretId?: string;
3964
+ /** Whether transaction fees should be sponsored by CDP. When true, CDP sponsors the transaction fees on behalf of the end user. When false, the end user is responsible for paying the transaction fees. */
3965
+ useCdpSponsor?: boolean;
3966
+ };
3967
+ export type SendSolanaAssetWithEndUserAccount200 = {
3968
+ /** The base58 encoded transaction signature. */
3969
+ transactionSignature: string;
3970
+ };
3563
3971
  export type ListEvmAccountsParams = {
3564
3972
  /**
3565
3973
  * The number of resources to return per page.
@@ -3616,6 +4024,9 @@ export declare const SendEvmTransactionBodyNetwork: {
3616
4024
  readonly polygon: "polygon";
3617
4025
  readonly optimism: "optimism";
3618
4026
  readonly arbitrum: "arbitrum";
4027
+ readonly "arbitrum-sepolia": "arbitrum-sepolia";
4028
+ readonly world: "world";
4029
+ readonly "world-sepolia": "world-sepolia";
3619
4030
  };
3620
4031
  export type SendEvmTransactionBody = {
3621
4032
  /** The network to send the transaction to. */