@privy-io/api-types 0.16.0 → 0.17.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 (112) hide show
  1. package/CHANGELOG.md +59 -0
  2. package/client.d.mts +14 -17
  3. package/client.d.mts.map +1 -1
  4. package/client.d.ts +14 -17
  5. package/client.d.ts.map +1 -1
  6. package/client.js +0 -3
  7. package/client.js.map +1 -1
  8. package/client.mjs +0 -3
  9. package/client.mjs.map +1 -1
  10. package/package.json +1 -1
  11. package/resources/client-auth.d.mts +12 -4
  12. package/resources/client-auth.d.mts.map +1 -1
  13. package/resources/client-auth.d.ts +12 -4
  14. package/resources/client-auth.d.ts.map +1 -1
  15. package/resources/embedded-wallets.d.mts +6 -0
  16. package/resources/embedded-wallets.d.mts.map +1 -1
  17. package/resources/embedded-wallets.d.ts +6 -0
  18. package/resources/embedded-wallets.d.ts.map +1 -1
  19. package/resources/index.d.mts +7 -8
  20. package/resources/index.d.mts.map +1 -1
  21. package/resources/index.d.ts +7 -8
  22. package/resources/index.d.ts.map +1 -1
  23. package/resources/index.js +1 -3
  24. package/resources/index.js.map +1 -1
  25. package/resources/index.mjs +0 -1
  26. package/resources/index.mjs.map +1 -1
  27. package/resources/kraken-embed.d.mts +110 -17
  28. package/resources/kraken-embed.d.mts.map +1 -1
  29. package/resources/kraken-embed.d.ts +110 -17
  30. package/resources/kraken-embed.d.ts.map +1 -1
  31. package/resources/policies.d.mts +48 -8
  32. package/resources/policies.d.mts.map +1 -1
  33. package/resources/policies.d.ts +48 -8
  34. package/resources/policies.d.ts.map +1 -1
  35. package/resources/transactions.d.mts +9 -2
  36. package/resources/transactions.d.mts.map +1 -1
  37. package/resources/transactions.d.ts +9 -2
  38. package/resources/transactions.d.ts.map +1 -1
  39. package/resources/users.d.mts +33 -7
  40. package/resources/users.d.mts.map +1 -1
  41. package/resources/users.d.ts +33 -7
  42. package/resources/users.d.ts.map +1 -1
  43. package/resources/{wallet-actions.d.ts → wallets/actions.d.mts} +257 -55
  44. package/resources/wallets/actions.d.mts.map +1 -0
  45. package/resources/{wallet-actions.d.mts → wallets/actions.d.ts} +257 -55
  46. package/resources/wallets/actions.d.ts.map +1 -0
  47. package/resources/wallets/actions.js +9 -0
  48. package/resources/wallets/actions.js.map +1 -0
  49. package/resources/wallets/actions.mjs +5 -0
  50. package/resources/wallets/actions.mjs.map +1 -0
  51. package/resources/wallets/balance.d.mts +7 -4
  52. package/resources/wallets/balance.d.mts.map +1 -1
  53. package/resources/wallets/balance.d.ts +7 -4
  54. package/resources/wallets/balance.d.ts.map +1 -1
  55. package/resources/wallets/index.d.mts +2 -1
  56. package/resources/wallets/index.d.mts.map +1 -1
  57. package/resources/wallets/index.d.ts +2 -1
  58. package/resources/wallets/index.d.ts.map +1 -1
  59. package/resources/wallets/index.js +3 -1
  60. package/resources/wallets/index.js.map +1 -1
  61. package/resources/wallets/index.mjs +1 -0
  62. package/resources/wallets/index.mjs.map +1 -1
  63. package/resources/wallets/transactions.d.mts +10 -3
  64. package/resources/wallets/transactions.d.mts.map +1 -1
  65. package/resources/wallets/transactions.d.ts +10 -3
  66. package/resources/wallets/transactions.d.ts.map +1 -1
  67. package/resources/wallets/transactions.js.map +1 -1
  68. package/resources/wallets/transactions.mjs.map +1 -1
  69. package/resources/wallets/wallets.d.mts +261 -28
  70. package/resources/wallets/wallets.d.mts.map +1 -1
  71. package/resources/wallets/wallets.d.ts +261 -28
  72. package/resources/wallets/wallets.d.ts.map +1 -1
  73. package/resources/wallets/wallets.js +4 -0
  74. package/resources/wallets/wallets.js.map +1 -1
  75. package/resources/wallets/wallets.mjs +4 -0
  76. package/resources/wallets/wallets.mjs.map +1 -1
  77. package/resources/webhooks.d.mts +357 -56
  78. package/resources/webhooks.d.mts.map +1 -1
  79. package/resources/webhooks.d.ts +357 -56
  80. package/resources/webhooks.d.ts.map +1 -1
  81. package/resources/yield.d.mts +4 -3
  82. package/resources/yield.d.mts.map +1 -1
  83. package/resources/yield.d.ts +4 -3
  84. package/resources/yield.d.ts.map +1 -1
  85. package/resources/yield.js.map +1 -1
  86. package/resources/yield.mjs.map +1 -1
  87. package/src/client.ts +84 -83
  88. package/src/resources/client-auth.ts +19 -3
  89. package/src/resources/embedded-wallets.ts +7 -0
  90. package/src/resources/index.ts +42 -40
  91. package/src/resources/kraken-embed.ts +439 -848
  92. package/src/resources/policies.ts +96 -36
  93. package/src/resources/transactions.ts +18 -9
  94. package/src/resources/users.ts +38 -6
  95. package/src/resources/{wallet-actions.ts → wallets/actions.ts} +318 -62
  96. package/src/resources/wallets/balance.ts +20 -62
  97. package/src/resources/wallets/index.ts +59 -0
  98. package/src/resources/wallets/transactions.ts +11 -10
  99. package/src/resources/wallets/wallets.ts +513 -66
  100. package/src/resources/webhooks.ts +436 -61
  101. package/src/resources/yield.ts +4 -11
  102. package/src/version.ts +1 -1
  103. package/version.d.mts +1 -1
  104. package/version.d.ts +1 -1
  105. package/version.js +1 -1
  106. package/version.mjs +1 -1
  107. package/resources/wallet-actions.d.mts.map +0 -1
  108. package/resources/wallet-actions.d.ts.map +0 -1
  109. package/resources/wallet-actions.js +0 -9
  110. package/resources/wallet-actions.js.map +0 -1
  111. package/resources/wallet-actions.mjs +0 -5
  112. package/resources/wallet-actions.mjs.map +0 -1
@@ -302,7 +302,10 @@ export interface EthereumCalldataCondition {
302
302
  * eth_sendTransaction request.
303
303
  */
304
304
  export interface EthereumTransactionCondition {
305
- field: 'to' | 'value' | 'chain_id';
305
+ /**
306
+ * Ethereum transaction-level fields that can be referenced in a policy condition.
307
+ */
308
+ field: EthereumTransactionConditionField;
306
309
 
307
310
  field_source: 'ethereum_transaction';
308
311
 
@@ -318,11 +321,19 @@ export interface EthereumTransactionCondition {
318
321
  value: ConditionValue;
319
322
  }
320
323
 
324
+ /**
325
+ * Ethereum transaction-level fields that can be referenced in a policy condition.
326
+ */
327
+ export type EthereumTransactionConditionField = 'to' | 'value' | 'chain_id';
328
+
321
329
  /**
322
330
  * Attributes from the signing domain that will verify the signature.
323
331
  */
324
332
  export interface EthereumTypedDataDomainCondition {
325
- field: 'chainId' | 'verifyingContract' | 'chain_id' | 'verifying_contract';
333
+ /**
334
+ * Supported fields for Ethereum typed data domain conditions.
335
+ */
336
+ field: EthereumTypedDataDomainConditionField;
326
337
 
327
338
  field_source: 'ethereum_typed_data_domain';
328
339
 
@@ -338,6 +349,15 @@ export interface EthereumTypedDataDomainCondition {
338
349
  value: ConditionValue;
339
350
  }
340
351
 
352
+ /**
353
+ * Supported fields for Ethereum typed data domain conditions.
354
+ */
355
+ export type EthereumTypedDataDomainConditionField =
356
+ | 'chainId'
357
+ | 'verifyingContract'
358
+ | 'chain_id'
359
+ | 'verifying_contract';
360
+
341
361
  /**
342
362
  * 'types' and 'primary_type' attributes of the TypedData JSON object defined in
343
363
  * EIP-712.
@@ -498,6 +518,8 @@ export type PolicyMethod =
498
518
  | 'exportSeedPhrase'
499
519
  | 'signTransactionBytes'
500
520
  | 'signRawMessageBytes'
521
+ | 'tron_sendTransaction'
522
+ | 'tron_signTransaction'
501
523
  | 'earn_deposit'
502
524
  | 'earn_withdraw'
503
525
  | 'transfer'
@@ -585,7 +607,11 @@ export interface SolanaProgramInstructionCondition {
585
607
  * fields.
586
608
  */
587
609
  export interface SolanaSystemProgramInstructionCondition {
588
- field: 'instructionName' | 'Transfer.from' | 'Transfer.to' | 'Transfer.lamports';
610
+ /**
611
+ * Supported fields for Solana System Program conditions including Transfer
612
+ * instruction fields.
613
+ */
614
+ field: SolanaSystemProgramInstructionConditionField;
589
615
 
590
616
  field_source: 'solana_system_program_instruction';
591
617
 
@@ -601,36 +627,27 @@ export interface SolanaSystemProgramInstructionCondition {
601
627
  value: ConditionValue;
602
628
  }
603
629
 
630
+ /**
631
+ * Supported fields for Solana System Program conditions including Transfer
632
+ * instruction fields.
633
+ */
634
+ export type SolanaSystemProgramInstructionConditionField =
635
+ | 'instructionName'
636
+ | 'Transfer.from'
637
+ | 'Transfer.to'
638
+ | 'Transfer.lamports';
639
+
604
640
  /**
605
641
  * Solana Token Program attributes, including more granular TransferChecked
606
642
  * instruction fields.
607
643
  */
608
644
  export interface SolanaTokenProgramInstructionCondition {
609
- field:
610
- | 'instructionName'
611
- | 'Transfer.source'
612
- | 'Transfer.destination'
613
- | 'Transfer.authority'
614
- | 'Transfer.amount'
615
- | 'TransferChecked.source'
616
- | 'TransferChecked.destination'
617
- | 'TransferChecked.authority'
618
- | 'TransferChecked.amount'
619
- | 'TransferChecked.mint'
620
- | 'Burn.account'
621
- | 'Burn.mint'
622
- | 'Burn.authority'
623
- | 'Burn.amount'
624
- | 'MintTo.mint'
625
- | 'MintTo.account'
626
- | 'MintTo.authority'
627
- | 'MintTo.amount'
628
- | 'CloseAccount.account'
629
- | 'CloseAccount.destination'
630
- | 'CloseAccount.authority'
631
- | 'InitializeAccount3.account'
632
- | 'InitializeAccount3.mint'
633
- | 'InitializeAccount3.owner';
645
+ /**
646
+ * Supported fields for Solana Token Program conditions including Transfer,
647
+ * TransferChecked, Burn, MintTo, CloseAccount, and InitializeAccount3 instruction
648
+ * fields.
649
+ */
650
+ field: SolanaTokenProgramInstructionConditionField;
634
651
 
635
652
  field_source: 'solana_token_program_instruction';
636
653
 
@@ -646,6 +663,37 @@ export interface SolanaTokenProgramInstructionCondition {
646
663
  value: ConditionValue;
647
664
  }
648
665
 
666
+ /**
667
+ * Supported fields for Solana Token Program conditions including Transfer,
668
+ * TransferChecked, Burn, MintTo, CloseAccount, and InitializeAccount3 instruction
669
+ * fields.
670
+ */
671
+ export type SolanaTokenProgramInstructionConditionField =
672
+ | 'instructionName'
673
+ | 'Transfer.source'
674
+ | 'Transfer.destination'
675
+ | 'Transfer.authority'
676
+ | 'Transfer.amount'
677
+ | 'TransferChecked.source'
678
+ | 'TransferChecked.destination'
679
+ | 'TransferChecked.authority'
680
+ | 'TransferChecked.amount'
681
+ | 'TransferChecked.mint'
682
+ | 'Burn.account'
683
+ | 'Burn.mint'
684
+ | 'Burn.authority'
685
+ | 'Burn.amount'
686
+ | 'MintTo.mint'
687
+ | 'MintTo.account'
688
+ | 'MintTo.authority'
689
+ | 'MintTo.amount'
690
+ | 'CloseAccount.account'
691
+ | 'CloseAccount.destination'
692
+ | 'CloseAccount.authority'
693
+ | 'InitializeAccount3.account'
694
+ | 'InitializeAccount3.mint'
695
+ | 'InitializeAccount3.owner';
696
+
649
697
  /**
650
698
  * SUI transaction command attributes, enables allowlisting specific command types.
651
699
  * Allowed commands: 'TransferObjects', 'SplitCoins', 'MergeCoins'. Only 'eq' and
@@ -792,15 +840,10 @@ export interface TronCalldataCondition {
792
840
  */
793
841
  export interface TronTransactionCondition {
794
842
  /**
795
- * Supported TRON transaction fields in format "TransactionType.field_name"
843
+ * Supported TRON transaction fields for TransferContract and TriggerSmartContract
844
+ * in format "TransactionType.field_name".
796
845
  */
797
- field:
798
- | 'TransferContract.to_address'
799
- | 'TransferContract.amount'
800
- | 'TriggerSmartContract.contract_address'
801
- | 'TriggerSmartContract.call_value'
802
- | 'TriggerSmartContract.token_id'
803
- | 'TriggerSmartContract.call_token_value';
846
+ field: TronTransactionConditionField;
804
847
 
805
848
  field_source: 'tron_transaction';
806
849
 
@@ -816,6 +859,18 @@ export interface TronTransactionCondition {
816
859
  value: ConditionValue;
817
860
  }
818
861
 
862
+ /**
863
+ * Supported TRON transaction fields for TransferContract and TriggerSmartContract
864
+ * in format "TransactionType.field_name".
865
+ */
866
+ export type TronTransactionConditionField =
867
+ | 'TransferContract.to_address'
868
+ | 'TransferContract.amount'
869
+ | 'TriggerSmartContract.contract_address'
870
+ | 'TriggerSmartContract.call_value'
871
+ | 'TriggerSmartContract.token_id'
872
+ | 'TriggerSmartContract.call_token_value';
873
+
819
874
  /**
820
875
  * The typed data structure containing EIP-712 types and the primary type for typed
821
876
  * data message policy conditions.
@@ -873,7 +928,9 @@ export declare namespace Policies {
873
928
  type Ethereum7702AuthorizationCondition as Ethereum7702AuthorizationCondition,
874
929
  type EthereumCalldataCondition as EthereumCalldataCondition,
875
930
  type EthereumTransactionCondition as EthereumTransactionCondition,
931
+ type EthereumTransactionConditionField as EthereumTransactionConditionField,
876
932
  type EthereumTypedDataDomainCondition as EthereumTypedDataDomainCondition,
933
+ type EthereumTypedDataDomainConditionField as EthereumTypedDataDomainConditionField,
877
934
  type EthereumTypedDataMessageCondition as EthereumTypedDataMessageCondition,
878
935
  type MessageSigningCondition as MessageSigningCondition,
879
936
  type MessageSigningField as MessageSigningField,
@@ -888,7 +945,9 @@ export declare namespace Policies {
888
945
  type PolicyRuleResponse as PolicyRuleResponse,
889
946
  type SolanaProgramInstructionCondition as SolanaProgramInstructionCondition,
890
947
  type SolanaSystemProgramInstructionCondition as SolanaSystemProgramInstructionCondition,
948
+ type SolanaSystemProgramInstructionConditionField as SolanaSystemProgramInstructionConditionField,
891
949
  type SolanaTokenProgramInstructionCondition as SolanaTokenProgramInstructionCondition,
950
+ type SolanaTokenProgramInstructionConditionField as SolanaTokenProgramInstructionConditionField,
892
951
  type SuiTransactionCommandCondition as SuiTransactionCommandCondition,
893
952
  type SuiTransactionCommandOperator as SuiTransactionCommandOperator,
894
953
  type SuiTransferObjectsCommandCondition as SuiTransferObjectsCommandCondition,
@@ -898,6 +957,7 @@ export declare namespace Policies {
898
957
  type TempoTransactionConditionField as TempoTransactionConditionField,
899
958
  type TronCalldataCondition as TronCalldataCondition,
900
959
  type TronTransactionCondition as TronTransactionCondition,
960
+ type TronTransactionConditionField as TronTransactionConditionField,
901
961
  type TypedDataInput as TypedDataInput,
902
962
  type UpdateConditionSetRequestBody as UpdateConditionSetRequestBody,
903
963
  };
@@ -4,6 +4,19 @@ import { APIResource } from '../core/resource';
4
4
 
5
5
  export class Transactions extends APIResource {}
6
6
 
7
+ /**
8
+ * Status of a blockchain transaction submitted by Privy.
9
+ */
10
+ export type BlockchainTransactionStatus =
11
+ | 'broadcasted'
12
+ | 'confirmed'
13
+ | 'execution_reverted'
14
+ | 'failed'
15
+ | 'replaced'
16
+ | 'finalized'
17
+ | 'provider_error'
18
+ | 'pending';
19
+
7
20
  /**
8
21
  * A transaction from a Privy wallet.
9
22
  */
@@ -14,15 +27,10 @@ export interface Transaction {
14
27
 
15
28
  created_at: number;
16
29
 
17
- status:
18
- | 'broadcasted'
19
- | 'confirmed'
20
- | 'execution_reverted'
21
- | 'failed'
22
- | 'replaced'
23
- | 'finalized'
24
- | 'provider_error'
25
- | 'pending';
30
+ /**
31
+ * Status of a blockchain transaction submitted by Privy.
32
+ */
33
+ status: BlockchainTransactionStatus;
26
34
 
27
35
  transaction_hash: string | null;
28
36
 
@@ -236,6 +244,7 @@ export interface TransactionScanningValidationSuccessResult {
236
244
 
237
245
  export declare namespace Transactions {
238
246
  export {
247
+ type BlockchainTransactionStatus as BlockchainTransactionStatus,
239
248
  type Transaction as Transaction,
240
249
  type TransactionList as TransactionList,
241
250
  type TransactionScanningAssetDiff as TransactionScanningAssetDiff,
@@ -19,9 +19,9 @@ export interface AuthenticatedUser {
19
19
  refresh_token: string | null;
20
20
 
21
21
  /**
22
- * Instructs the client on how to handle tokens received
22
+ * Instructs the client on how to handle tokens received from a session response.
23
23
  */
24
- session_update_action: 'set' | 'ignore' | 'clear';
24
+ session_update_action: ClientSessionUpdateAction;
25
25
 
26
26
  /**
27
27
  * A Privy user object.
@@ -38,6 +38,11 @@ export interface AuthenticatedUser {
38
38
  oauth_tokens?: OAuthTokens;
39
39
  }
40
40
 
41
+ /**
42
+ * Instructs the client on how to handle tokens received from a session response.
43
+ */
44
+ export type ClientSessionUpdateAction = 'set' | 'ignore' | 'clear';
45
+
41
46
  /**
42
47
  * An embedded wallet associated with a cross-app account.
43
48
  */
@@ -150,11 +155,22 @@ export interface LinkedAccountAuthorizationKey {
150
155
  export interface LinkedAccountBaseWallet {
151
156
  address: string;
152
157
 
153
- chain_type: 'solana' | 'ethereum';
158
+ /**
159
+ * The wallet chain types that offer first class support.
160
+ */
161
+ chain_type: WalletsAPI.FirstClassChainType;
154
162
 
155
- type: 'wallet' | 'smart_wallet';
163
+ /**
164
+ * The type of wallet linked account (external wallet or smart wallet).
165
+ */
166
+ type: LinkedAccountBaseWalletType;
156
167
  }
157
168
 
169
+ /**
170
+ * The type of wallet linked account (external wallet or smart wallet).
171
+ */
172
+ export type LinkedAccountBaseWalletType = 'wallet' | 'smart_wallet';
173
+
158
174
  /**
159
175
  * A Bitcoin SegWit embedded wallet account linked to the user.
160
176
  */
@@ -811,11 +827,21 @@ export interface LinkedAccountPasskey {
811
827
  public_key?: string;
812
828
  }
813
829
 
830
+ /**
831
+ * WebAuthn credential device type indicating platform or cross-platform
832
+ * authenticator residency.
833
+ */
834
+ export type LinkedAccountPasskeyCredentialDeviceType = 'singleDevice' | 'multiDevice';
835
+
814
836
  /**
815
837
  * The payload for importing a passkey account.
816
838
  */
817
839
  export interface LinkedAccountPasskeyInput {
818
- credential_device_type: 'singleDevice' | 'multiDevice';
840
+ /**
841
+ * WebAuthn credential device type indicating platform or cross-platform
842
+ * authenticator residency.
843
+ */
844
+ credential_device_type: LinkedAccountPasskeyCredentialDeviceType;
819
845
 
820
846
  credential_id: string;
821
847
 
@@ -1138,7 +1164,10 @@ export type LinkedAccountType =
1138
1164
  export interface LinkedAccountWalletInput {
1139
1165
  address: string;
1140
1166
 
1141
- chain_type: 'ethereum' | 'solana';
1167
+ /**
1168
+ * The wallet chain types that offer first class support.
1169
+ */
1170
+ chain_type: WalletsAPI.FirstClassChainType;
1142
1171
 
1143
1172
  type: 'wallet';
1144
1173
  }
@@ -1283,6 +1312,7 @@ export interface UserWithIdentityToken {
1283
1312
  export declare namespace Users {
1284
1313
  export {
1285
1314
  type AuthenticatedUser as AuthenticatedUser,
1315
+ type ClientSessionUpdateAction as ClientSessionUpdateAction,
1286
1316
  type CrossAppEmbeddedWallet as CrossAppEmbeddedWallet,
1287
1317
  type CrossAppSmartWallet as CrossAppSmartWallet,
1288
1318
  type CustomMetadata as CustomMetadata,
@@ -1292,6 +1322,7 @@ export declare namespace Users {
1292
1322
  type LinkedAccountAppleOAuth as LinkedAccountAppleOAuth,
1293
1323
  type LinkedAccountAuthorizationKey as LinkedAccountAuthorizationKey,
1294
1324
  type LinkedAccountBaseWallet as LinkedAccountBaseWallet,
1325
+ type LinkedAccountBaseWalletType as LinkedAccountBaseWalletType,
1295
1326
  type LinkedAccountBitcoinSegwitEmbeddedWallet as LinkedAccountBitcoinSegwitEmbeddedWallet,
1296
1327
  type LinkedAccountBitcoinTaprootEmbeddedWallet as LinkedAccountBitcoinTaprootEmbeddedWallet,
1297
1328
  type LinkedAccountCrossApp as LinkedAccountCrossApp,
@@ -1321,6 +1352,7 @@ export declare namespace Users {
1321
1352
  type LinkedAccountLinkedInInput as LinkedAccountLinkedInInput,
1322
1353
  type LinkedAccountLinkedInOAuth as LinkedAccountLinkedInOAuth,
1323
1354
  type LinkedAccountPasskey as LinkedAccountPasskey,
1355
+ type LinkedAccountPasskeyCredentialDeviceType as LinkedAccountPasskeyCredentialDeviceType,
1324
1356
  type LinkedAccountPasskeyInput as LinkedAccountPasskeyInput,
1325
1357
  type LinkedAccountPhone as LinkedAccountPhone,
1326
1358
  type LinkedAccountPhoneInput as LinkedAccountPhoneInput,