privy_ruby 0.1.0 → 0.2.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 (161) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +13 -0
  3. data/README.md +1 -1
  4. data/lib/privy/client.rb +5 -4
  5. data/lib/privy/models/analytics_event_input.rb +2 -2
  6. data/lib/privy/models/bitcoin_address.rb +7 -0
  7. data/lib/privy/models/bridge_destination_asset.rb +1 -0
  8. data/lib/privy/models/bridge_fiat_virtual_account_destination.rb +6 -1
  9. data/lib/privy/models/bridge_fiat_virtual_account_request.rb +6 -2
  10. data/lib/privy/models/bridge_fiat_virtual_account_response.rb +2 -1
  11. data/lib/privy/models/bridge_fiat_virtual_account_source.rb +4 -1
  12. data/lib/privy/models/bridge_sandbox_fiat_virtual_account_request.rb +6 -2
  13. data/lib/privy/models/bridge_sandbox_fiat_virtual_account_response.rb +2 -1
  14. data/lib/privy/models/bridge_source_asset.rb +1 -0
  15. data/lib/privy/models/create_stripe_onramp_session_response.rb +16 -1
  16. data/lib/privy/models/device_verify_action.rb +16 -0
  17. data/lib/privy/models/device_verify_request_body.rb +27 -0
  18. data/lib/privy/models/device_verify_response.rb +18 -0
  19. data/lib/privy/models/evm_address.rb +7 -0
  20. data/lib/privy/models/evm_checksum_address.rb +7 -0
  21. data/lib/privy/models/gas.rb +35 -0
  22. data/lib/privy/models/hyperliquid_token_address.rb +7 -0
  23. data/lib/privy/models/linked_account_embedded_wallet.rb +1 -0
  24. data/lib/privy/models/oauth_grant.rb +54 -0
  25. data/lib/privy/models/oauth_grant_list_response.rb +18 -0
  26. data/lib/privy/models/oauth_grant_revoke_response.rb +30 -0
  27. data/lib/privy/models/oauth_token_authorization_code_request_body.rb +59 -0
  28. data/lib/privy/models/oauth_token_device_code_pending_error.rb +50 -0
  29. data/lib/privy/models/oauth_token_device_code_request_body.rb +36 -0
  30. data/lib/privy/models/oauth_token_grant_type.rb +17 -0
  31. data/lib/privy/models/oauth_token_refresh_token_request_body.rb +36 -0
  32. data/lib/privy/models/oauth_token_request_body.rb +24 -0
  33. data/lib/privy/models/oauth_token_success_response.rb +58 -0
  34. data/lib/privy/models/onramp_session_fees.rb +23 -0
  35. data/lib/privy/models/onramp_session_transaction_details.rb +59 -0
  36. data/lib/privy/models/solana_address.rb +7 -0
  37. data/lib/privy/models/swap_action_response.rb +38 -1
  38. data/lib/privy/models/swap_quote_request_body.rb +3 -3
  39. data/lib/privy/models/swap_quote_response.rb +18 -5
  40. data/lib/privy/models/swap_request_body.rb +3 -3
  41. data/lib/privy/models/token_transfer_destination.rb +2 -2
  42. data/lib/privy/models/transfer_action_response.rb +29 -3
  43. data/lib/privy/models/transfer_quote_request_body.rb +3 -2
  44. data/lib/privy/models/transfer_quote_response.rb +10 -1
  45. data/lib/privy/models/transfer_received_transaction_detail.rb +5 -0
  46. data/lib/privy/models/transfer_request_body.rb +3 -2
  47. data/lib/privy/models/transfer_sent_transaction_detail.rb +5 -0
  48. data/lib/privy/models/tron_address.rb +7 -0
  49. data/lib/privy/models/wallet_asset.rb +1 -0
  50. data/lib/privy/models/wallet_batch_create_response.rb +1 -0
  51. data/lib/privy/models/wallet_create_batch_params.rb +14 -0
  52. data/lib/privy/models/wallet_ethereum_asset.rb +1 -0
  53. data/lib/privy/models/wallets/balance_get_params.rb +11 -0
  54. data/lib/privy/models/wallets/balance_get_response.rb +5 -0
  55. data/lib/privy/models/wallets/transaction_get_params.rb +3 -0
  56. data/lib/privy/models.rb +46 -0
  57. data/lib/privy/resources/intents.rb +2 -1
  58. data/lib/privy/resources/wallets/swap.rb +2 -2
  59. data/lib/privy/resources/wallets.rb +25 -1
  60. data/lib/privy/version.rb +1 -1
  61. data/lib/privy.rb +24 -1
  62. data/rbi/privy/client.rbi +4 -3
  63. data/rbi/privy/models/analytics_event_input.rbi +3 -6
  64. data/rbi/privy/models/bitcoin_address.rbi +7 -0
  65. data/rbi/privy/models/bridge_destination_asset.rbi +1 -0
  66. data/rbi/privy/models/bridge_fiat_virtual_account_destination.rbi +8 -1
  67. data/rbi/privy/models/bridge_fiat_virtual_account_request.rbi +9 -1
  68. data/rbi/privy/models/bridge_fiat_virtual_account_response.rbi +2 -0
  69. data/rbi/privy/models/bridge_fiat_virtual_account_source.rbi +6 -1
  70. data/rbi/privy/models/bridge_sandbox_fiat_virtual_account_request.rbi +9 -1
  71. data/rbi/privy/models/bridge_sandbox_fiat_virtual_account_response.rbi +2 -0
  72. data/rbi/privy/models/bridge_source_asset.rbi +1 -0
  73. data/rbi/privy/models/create_stripe_onramp_session_response.rbi +61 -3
  74. data/rbi/privy/models/device_verify_action.rbi +22 -0
  75. data/rbi/privy/models/device_verify_request_body.rbi +44 -0
  76. data/rbi/privy/models/device_verify_response.rbi +28 -0
  77. data/rbi/privy/models/evm_address.rbi +7 -0
  78. data/rbi/privy/models/evm_checksum_address.rbi +7 -0
  79. data/rbi/privy/models/gas.rbi +46 -0
  80. data/rbi/privy/models/hyperliquid_token_address.rbi +7 -0
  81. data/rbi/privy/models/linked_account_embedded_wallet.rbi +1 -0
  82. data/rbi/privy/models/oauth_grant.rbi +78 -0
  83. data/rbi/privy/models/oauth_grant_list_response.rbi +32 -0
  84. data/rbi/privy/models/oauth_grant_revoke_response.rbi +58 -0
  85. data/rbi/privy/models/oauth_token_authorization_code_request_body.rbi +115 -0
  86. data/rbi/privy/models/oauth_token_device_code_pending_error.rbi +106 -0
  87. data/rbi/privy/models/oauth_token_device_code_request_body.rbi +78 -0
  88. data/rbi/privy/models/oauth_token_grant_type.rbi +29 -0
  89. data/rbi/privy/models/oauth_token_refresh_token_request_body.rbi +78 -0
  90. data/rbi/privy/models/oauth_token_request_body.rbi +23 -0
  91. data/rbi/privy/models/oauth_token_success_response.rbi +95 -0
  92. data/rbi/privy/models/onramp_session_fees.rbi +39 -0
  93. data/rbi/privy/models/onramp_session_transaction_details.rbi +95 -0
  94. data/rbi/privy/models/solana_address.rbi +7 -0
  95. data/rbi/privy/models/swap_action_response.rbi +84 -0
  96. data/rbi/privy/models/swap_quote_request_body.rbi +4 -4
  97. data/rbi/privy/models/swap_quote_response.rbi +19 -4
  98. data/rbi/privy/models/swap_request_body.rbi +4 -4
  99. data/rbi/privy/models/token_transfer_destination.rbi +2 -2
  100. data/rbi/privy/models/transfer_action_response.rbi +57 -2
  101. data/rbi/privy/models/transfer_quote_request_body.rbi +4 -2
  102. data/rbi/privy/models/transfer_quote_response.rbi +16 -3
  103. data/rbi/privy/models/transfer_received_transaction_detail.rbi +15 -0
  104. data/rbi/privy/models/transfer_request_body.rbi +4 -2
  105. data/rbi/privy/models/transfer_sent_transaction_detail.rbi +15 -0
  106. data/rbi/privy/models/tron_address.rbi +7 -0
  107. data/rbi/privy/models/wallet_asset.rbi +1 -0
  108. data/rbi/privy/models/wallet_batch_create_response.rbi +2 -19
  109. data/rbi/privy/models/wallet_batch_create_result.rbi +4 -4
  110. data/rbi/privy/models/wallet_create_batch_params.rbi +27 -0
  111. data/rbi/privy/models/wallet_ethereum_asset.rbi +1 -0
  112. data/rbi/privy/models/wallets/balance_get_params.rbi +22 -0
  113. data/rbi/privy/models/wallets/balance_get_response.rbi +15 -0
  114. data/rbi/privy/models/wallets/transaction_get_params.rbi +5 -0
  115. data/rbi/privy/models.rbi +51 -0
  116. data/rbi/privy/resources/intents.rbi +4 -1
  117. data/rbi/privy/resources/wallets/swap.rbi +2 -2
  118. data/rbi/privy/resources/wallets.rbi +19 -1
  119. data/sig/privy/client.rbs +2 -2
  120. data/sig/privy/models/analytics_event_input.rbs +4 -6
  121. data/sig/privy/models/bitcoin_address.rbs +5 -0
  122. data/sig/privy/models/create_stripe_onramp_session_response.rbs +29 -3
  123. data/sig/privy/models/device_verify_action.rbs +14 -0
  124. data/sig/privy/models/device_verify_request_body.rbs +22 -0
  125. data/sig/privy/models/device_verify_response.rbs +13 -0
  126. data/sig/privy/models/evm_address.rbs +5 -0
  127. data/sig/privy/models/evm_checksum_address.rbs +5 -0
  128. data/sig/privy/models/gas.rbs +21 -0
  129. data/sig/privy/models/hyperliquid_token_address.rbs +5 -0
  130. data/sig/privy/models/oauth_grant.rbs +45 -0
  131. data/sig/privy/models/oauth_grant_list_response.rbs +13 -0
  132. data/sig/privy/models/oauth_grant_revoke_response.rbs +28 -0
  133. data/sig/privy/models/oauth_token_authorization_code_request_body.rbs +56 -0
  134. data/sig/privy/models/oauth_token_device_code_pending_error.rbs +48 -0
  135. data/sig/privy/models/oauth_token_device_code_request_body.rbs +35 -0
  136. data/sig/privy/models/oauth_token_grant_type.rbs +18 -0
  137. data/sig/privy/models/oauth_token_refresh_token_request_body.rbs +35 -0
  138. data/sig/privy/models/oauth_token_request_body.rbs +14 -0
  139. data/sig/privy/models/oauth_token_success_response.rbs +49 -0
  140. data/sig/privy/models/onramp_session_fees.rbs +22 -0
  141. data/sig/privy/models/onramp_session_transaction_details.rbs +53 -0
  142. data/sig/privy/models/solana_address.rbs +5 -0
  143. data/sig/privy/models/swap_action_response.rbs +32 -0
  144. data/sig/privy/models/swap_quote_request_body.rbs +5 -5
  145. data/sig/privy/models/swap_quote_response.rbs +7 -0
  146. data/sig/privy/models/swap_request_body.rbs +5 -5
  147. data/sig/privy/models/transfer_action_response.rbs +23 -0
  148. data/sig/privy/models/transfer_quote_response.rbs +10 -3
  149. data/sig/privy/models/transfer_received_transaction_detail.rbs +15 -1
  150. data/sig/privy/models/transfer_sent_transaction_detail.rbs +15 -1
  151. data/sig/privy/models/tron_address.rbs +5 -0
  152. data/sig/privy/models/wallet_asset.rbs +2 -1
  153. data/sig/privy/models/wallet_create_batch_params.rbs +15 -0
  154. data/sig/privy/models/wallet_ethereum_asset.rbs +2 -1
  155. data/sig/privy/models/wallets/balance_get_params.rbs +10 -0
  156. data/sig/privy/models/wallets/balance_get_response.rbs +6 -0
  157. data/sig/privy/models/wallets/transaction_get_params.rbs +2 -0
  158. data/sig/privy/models.rbs +46 -0
  159. data/sig/privy/resources/wallets/swap.rbs +2 -2
  160. data/sig/privy/resources/wallets.rbs +5 -0
  161. metadata +71 -2
@@ -14,7 +14,7 @@ module Privy
14
14
  source: Privy::SwapSource::OrHash,
15
15
  amount_type: Privy::AmountType::OrSymbol,
16
16
  fee_configuration: Privy::FeeConfiguration::OrHash,
17
- slippage_bps: Float,
17
+ slippage_bps: Integer,
18
18
  privy_authorization_signature: String,
19
19
  privy_idempotency_key: String,
20
20
  request_options: Privy::RequestOptions::OrHash
@@ -55,7 +55,7 @@ module Privy
55
55
  source: Privy::SwapSource::OrHash,
56
56
  amount_type: Privy::AmountType::OrSymbol,
57
57
  fee_configuration: Privy::FeeConfiguration::OrHash,
58
- slippage_bps: Float,
58
+ slippage_bps: Integer,
59
59
  privy_authorization_signature: String,
60
60
  request_options: Privy::RequestOptions::OrHash
61
61
  ).returns(Privy::SwapQuoteResponse)
@@ -238,7 +238,9 @@ module Privy
238
238
  amount_type: nil,
239
239
  # Body param: Total fees assessed on a transfer, in BPS
240
240
  fee_configuration: nil,
241
- # Body param: Maximum allowed slippage in basis points (1 bps = 0.01%).
241
+ # Body param: Maximum allowed slippage in basis points (1 bps = 0.01%). Only
242
+ # applicable for cross-chain or cross-asset transfers; omit to use the provider
243
+ # default.
242
244
  slippage_bps: nil,
243
245
  # Header param: Request authorization signature. If multiple signatures are
244
246
  # required, they should be comma separated.
@@ -277,6 +279,22 @@ module Privy
277
279
  )
278
280
  end
279
281
 
282
+ # Creates multiple wallets in a single request. Each wallet creation is
283
+ # independent; failures for one wallet do not affect others. Maximum batch size is
284
+ # 100 wallets.
285
+ sig do
286
+ params(
287
+ wallets: T::Array[Privy::WalletBatchItemInput::OrHash],
288
+ request_options: Privy::RequestOptions::OrHash
289
+ ).returns(Privy::WalletBatchCreateResponse)
290
+ end
291
+ def create_batch(
292
+ # Array of wallet creation requests. Minimum 1, maximum 100.
293
+ wallets:,
294
+ request_options: {}
295
+ )
296
+ end
297
+
280
298
  # Create one or more wallets associated with a recovery user, so the user can
281
299
  # later regain wallet access via the linked accounts. Deprecated; prefer the
282
300
  # standard wallet creation flow combined with a separate recovery setup.
data/sig/privy/client.rbs CHANGED
@@ -43,6 +43,8 @@ module Privy
43
43
 
44
44
  attr_reader client_auth: Privy::Resources::ClientAuth
45
45
 
46
+ attr_reader shared: Privy::Resources::Shared
47
+
46
48
  attr_reader onramps: Privy::Resources::Onramps
47
49
 
48
50
  attr_reader funding: Privy::Resources::Funding
@@ -51,8 +53,6 @@ module Privy
51
53
 
52
54
  attr_reader cross_app: Privy::Resources::CrossApp
53
55
 
54
- attr_reader shared: Privy::Resources::Shared
55
-
56
56
  attr_reader oauth: Privy::Resources::OAuth
57
57
 
58
58
  attr_reader wallet_actions: Privy::Resources::WalletActions
@@ -1,14 +1,12 @@
1
1
  module Privy
2
2
  module Models
3
3
  type analytics_event_input =
4
- { event_name: String, client_id: String, payload: ::Hash[Symbol, top] }
4
+ { event_name: String, client_id: String?, payload: ::Hash[Symbol, top] }
5
5
 
6
6
  class AnalyticsEventInput < Privy::Internal::Type::BaseModel
7
7
  attr_accessor event_name: String
8
8
 
9
- attr_reader client_id: String?
10
-
11
- def client_id=: (String) -> String
9
+ attr_accessor client_id: String?
12
10
 
13
11
  attr_reader payload: ::Hash[Symbol, top]?
14
12
 
@@ -16,13 +14,13 @@ module Privy
16
14
 
17
15
  def initialize: (
18
16
  event_name: String,
19
- ?client_id: String,
17
+ ?client_id: String?,
20
18
  ?payload: ::Hash[Symbol, top]
21
19
  ) -> void
22
20
 
23
21
  def to_hash: -> {
24
22
  event_name: String,
25
- client_id: String,
23
+ client_id: String?,
26
24
  payload: ::Hash[Symbol, top]
27
25
  }
28
26
  end
@@ -0,0 +1,5 @@
1
+ module Privy
2
+ module Models
3
+ class BitcoinAddress = String
4
+ end
5
+ end
@@ -1,16 +1,42 @@
1
1
  module Privy
2
2
  module Models
3
3
  type create_stripe_onramp_session_response =
4
- { id: String, session_id: String }
4
+ {
5
+ id: String,
6
+ session_id: String,
7
+ transaction_details: Privy::CreateStripeOnrampSessionResponse::TransactionDetails
8
+ }
5
9
 
6
10
  class CreateStripeOnrampSessionResponse < Privy::Internal::Type::BaseModel
7
11
  attr_accessor id: String
8
12
 
9
13
  attr_accessor session_id: String
10
14
 
11
- def initialize: (id: String, session_id: String) -> void
15
+ attr_reader transaction_details: Privy::CreateStripeOnrampSessionResponse::TransactionDetails?
12
16
 
13
- def to_hash: -> { id: String, session_id: String }
17
+ def transaction_details=: (
18
+ Privy::CreateStripeOnrampSessionResponse::TransactionDetails
19
+ ) -> Privy::CreateStripeOnrampSessionResponse::TransactionDetails
20
+
21
+ def initialize: (
22
+ id: String,
23
+ session_id: String,
24
+ ?transaction_details: Privy::CreateStripeOnrampSessionResponse::TransactionDetails
25
+ ) -> void
26
+
27
+ def to_hash: -> {
28
+ id: String,
29
+ session_id: String,
30
+ transaction_details: Privy::CreateStripeOnrampSessionResponse::TransactionDetails
31
+ }
32
+
33
+ type transaction_details = { }
34
+
35
+ class TransactionDetails < Privy::Models::OnrampSessionTransactionDetails
36
+ def initialize: -> void
37
+
38
+ def to_hash: -> { }
39
+ end
14
40
  end
15
41
  end
16
42
  end
@@ -0,0 +1,14 @@
1
+ module Privy
2
+ module Models
3
+ type device_verify_action = :approve | :deny
4
+
5
+ module DeviceVerifyAction
6
+ extend Privy::Internal::Type::Enum
7
+
8
+ APPROVE: :approve
9
+ DENY: :deny
10
+
11
+ def self?.values: -> ::Array[Privy::Models::device_verify_action]
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,22 @@
1
+ module Privy
2
+ module Models
3
+ type device_verify_request_body =
4
+ { action: Privy::Models::device_verify_action, user_code: String }
5
+
6
+ class DeviceVerifyRequestBody < Privy::Internal::Type::BaseModel
7
+ attr_accessor action: Privy::Models::device_verify_action
8
+
9
+ attr_accessor user_code: String
10
+
11
+ def initialize: (
12
+ action: Privy::Models::device_verify_action,
13
+ user_code: String
14
+ ) -> void
15
+
16
+ def to_hash: -> {
17
+ action: Privy::Models::device_verify_action,
18
+ user_code: String
19
+ }
20
+ end
21
+ end
22
+ end
@@ -0,0 +1,13 @@
1
+ module Privy
2
+ module Models
3
+ type device_verify_response = { success: bool }
4
+
5
+ class DeviceVerifyResponse < Privy::Internal::Type::BaseModel
6
+ attr_accessor success: bool
7
+
8
+ def initialize: (success: bool) -> void
9
+
10
+ def to_hash: -> { success: bool }
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,5 @@
1
+ module Privy
2
+ module Models
3
+ class EvmAddress = String
4
+ end
5
+ end
@@ -0,0 +1,5 @@
1
+ module Privy
2
+ module Models
3
+ class EvmChecksumAddress = String
4
+ end
5
+ end
@@ -0,0 +1,21 @@
1
+ module Privy
2
+ module Models
3
+ type gas = { amount: String, base_amount: String, gas_asset: String }
4
+
5
+ class Gas < Privy::Internal::Type::BaseModel
6
+ attr_accessor amount: String
7
+
8
+ attr_accessor base_amount: String
9
+
10
+ attr_accessor gas_asset: String
11
+
12
+ def initialize: (
13
+ amount: String,
14
+ base_amount: String,
15
+ gas_asset: String
16
+ ) -> void
17
+
18
+ def to_hash: -> { amount: String, base_amount: String, gas_asset: String }
19
+ end
20
+ end
21
+ end
@@ -0,0 +1,5 @@
1
+ module Privy
2
+ module Models
3
+ class HyperliquidTokenAddress = String
4
+ end
5
+ end
@@ -0,0 +1,45 @@
1
+ module Privy
2
+ module Models
3
+ type oauth_grant =
4
+ {
5
+ id: String,
6
+ created_at: Time,
7
+ grant_type: Privy::Models::OAuthGrant::grant_type,
8
+ last_used_at: Time
9
+ }
10
+
11
+ class OAuthGrant < Privy::Internal::Type::BaseModel
12
+ attr_accessor id: String
13
+
14
+ attr_accessor created_at: Time
15
+
16
+ attr_accessor grant_type: Privy::Models::OAuthGrant::grant_type
17
+
18
+ attr_accessor last_used_at: Time
19
+
20
+ def initialize: (
21
+ id: String,
22
+ created_at: Time,
23
+ grant_type: Privy::Models::OAuthGrant::grant_type,
24
+ last_used_at: Time
25
+ ) -> void
26
+
27
+ def to_hash: -> {
28
+ id: String,
29
+ created_at: Time,
30
+ grant_type: Privy::Models::OAuthGrant::grant_type,
31
+ last_used_at: Time
32
+ }
33
+
34
+ type grant_type = :device_code
35
+
36
+ module GrantType
37
+ extend Privy::Internal::Type::Enum
38
+
39
+ DEVICE_CODE: :device_code
40
+
41
+ def self?.values: -> ::Array[Privy::Models::OAuthGrant::grant_type]
42
+ end
43
+ end
44
+ end
45
+ end
@@ -0,0 +1,13 @@
1
+ module Privy
2
+ module Models
3
+ type oauth_grant_list_response = { data: ::Array[Privy::OAuthGrant] }
4
+
5
+ class OAuthGrantListResponse < Privy::Internal::Type::BaseModel
6
+ attr_accessor data: ::Array[Privy::OAuthGrant]
7
+
8
+ def initialize: (data: ::Array[Privy::OAuthGrant]) -> void
9
+
10
+ def to_hash: -> { data: ::Array[Privy::OAuthGrant] }
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,28 @@
1
+ module Privy
2
+ module Models
3
+ type oauth_grant_revoke_response =
4
+ { success: Privy::Models::OAuthGrantRevokeResponse::success }
5
+
6
+ class OAuthGrantRevokeResponse < Privy::Internal::Type::BaseModel
7
+ attr_accessor success: Privy::Models::OAuthGrantRevokeResponse::success
8
+
9
+ def initialize: (
10
+ success: Privy::Models::OAuthGrantRevokeResponse::success
11
+ ) -> void
12
+
13
+ def to_hash: -> {
14
+ success: Privy::Models::OAuthGrantRevokeResponse::success
15
+ }
16
+
17
+ type success = true
18
+
19
+ module Success
20
+ extend Privy::Internal::Type::Enum
21
+
22
+ TRUE: true
23
+
24
+ def self?.values: -> ::Array[Privy::Models::OAuthGrantRevokeResponse::success]
25
+ end
26
+ end
27
+ end
28
+ end
@@ -0,0 +1,56 @@
1
+ module Privy
2
+ module Models
3
+ type oauth_token_authorization_code_request_body =
4
+ {
5
+ code: String,
6
+ grant_type: Privy::Models::OAuthTokenAuthorizationCodeRequestBody::grant_type,
7
+ client_id: String,
8
+ client_secret: String,
9
+ redirect_uri: String
10
+ }
11
+
12
+ class OAuthTokenAuthorizationCodeRequestBody < Privy::Internal::Type::BaseModel
13
+ attr_accessor code: String
14
+
15
+ attr_accessor grant_type: Privy::Models::OAuthTokenAuthorizationCodeRequestBody::grant_type
16
+
17
+ attr_reader client_id: String?
18
+
19
+ def client_id=: (String) -> String
20
+
21
+ attr_reader client_secret: String?
22
+
23
+ def client_secret=: (String) -> String
24
+
25
+ attr_reader redirect_uri: String?
26
+
27
+ def redirect_uri=: (String) -> String
28
+
29
+ def initialize: (
30
+ code: String,
31
+ grant_type: Privy::Models::OAuthTokenAuthorizationCodeRequestBody::grant_type,
32
+ ?client_id: String,
33
+ ?client_secret: String,
34
+ ?redirect_uri: String
35
+ ) -> void
36
+
37
+ def to_hash: -> {
38
+ code: String,
39
+ grant_type: Privy::Models::OAuthTokenAuthorizationCodeRequestBody::grant_type,
40
+ client_id: String,
41
+ client_secret: String,
42
+ redirect_uri: String
43
+ }
44
+
45
+ type grant_type = :authorization_code
46
+
47
+ module GrantType
48
+ extend Privy::Internal::Type::Enum
49
+
50
+ AUTHORIZATION_CODE: :authorization_code
51
+
52
+ def self?.values: -> ::Array[Privy::Models::OAuthTokenAuthorizationCodeRequestBody::grant_type]
53
+ end
54
+ end
55
+ end
56
+ end
@@ -0,0 +1,48 @@
1
+ module Privy
2
+ module Models
3
+ type oauth_token_device_code_pending_error =
4
+ {
5
+ error: Privy::Models::OAuthTokenDeviceCodePendingError::error,
6
+ error_description: String,
7
+ interval: Float
8
+ }
9
+
10
+ class OAuthTokenDeviceCodePendingError < Privy::Internal::Type::BaseModel
11
+ attr_accessor error: Privy::Models::OAuthTokenDeviceCodePendingError::error
12
+
13
+ attr_reader error_description: String?
14
+
15
+ def error_description=: (String) -> String
16
+
17
+ attr_reader interval: Float?
18
+
19
+ def interval=: (Float) -> Float
20
+
21
+ def initialize: (
22
+ error: Privy::Models::OAuthTokenDeviceCodePendingError::error,
23
+ ?error_description: String,
24
+ ?interval: Float
25
+ ) -> void
26
+
27
+ def to_hash: -> {
28
+ error: Privy::Models::OAuthTokenDeviceCodePendingError::error,
29
+ error_description: String,
30
+ interval: Float
31
+ }
32
+
33
+ type error =
34
+ :authorization_pending | :slow_down | :access_denied | :expired_token
35
+
36
+ module Error
37
+ extend Privy::Internal::Type::Enum
38
+
39
+ AUTHORIZATION_PENDING: :authorization_pending
40
+ SLOW_DOWN: :slow_down
41
+ ACCESS_DENIED: :access_denied
42
+ EXPIRED_TOKEN: :expired_token
43
+
44
+ def self?.values: -> ::Array[Privy::Models::OAuthTokenDeviceCodePendingError::error]
45
+ end
46
+ end
47
+ end
48
+ end
@@ -0,0 +1,35 @@
1
+ module Privy
2
+ module Models
3
+ type oauth_token_device_code_request_body =
4
+ {
5
+ device_code: String,
6
+ grant_type: Privy::Models::OAuthTokenDeviceCodeRequestBody::grant_type
7
+ }
8
+
9
+ class OAuthTokenDeviceCodeRequestBody < Privy::Internal::Type::BaseModel
10
+ attr_accessor device_code: String
11
+
12
+ attr_accessor grant_type: Privy::Models::OAuthTokenDeviceCodeRequestBody::grant_type
13
+
14
+ def initialize: (
15
+ device_code: String,
16
+ grant_type: Privy::Models::OAuthTokenDeviceCodeRequestBody::grant_type
17
+ ) -> void
18
+
19
+ def to_hash: -> {
20
+ device_code: String,
21
+ grant_type: Privy::Models::OAuthTokenDeviceCodeRequestBody::grant_type
22
+ }
23
+
24
+ type grant_type = :"urn:ietf:params:oauth:grant-type:device_code"
25
+
26
+ module GrantType
27
+ extend Privy::Internal::Type::Enum
28
+
29
+ URN_IETF_PARAMS_OAUTH_GRANT_TYPE_DEVICE_CODE: :"urn:ietf:params:oauth:grant-type:device_code"
30
+
31
+ def self?.values: -> ::Array[Privy::Models::OAuthTokenDeviceCodeRequestBody::grant_type]
32
+ end
33
+ end
34
+ end
35
+ end
@@ -0,0 +1,18 @@
1
+ module Privy
2
+ module Models
3
+ type oauth_token_grant_type =
4
+ :authorization_code
5
+ | :"urn:ietf:params:oauth:grant-type:device_code"
6
+ | :refresh_token
7
+
8
+ module OAuthTokenGrantType
9
+ extend Privy::Internal::Type::Enum
10
+
11
+ AUTHORIZATION_CODE: :authorization_code
12
+ URN_IETF_PARAMS_OAUTH_GRANT_TYPE_DEVICE_CODE: :"urn:ietf:params:oauth:grant-type:device_code"
13
+ REFRESH_TOKEN: :refresh_token
14
+
15
+ def self?.values: -> ::Array[Privy::Models::oauth_token_grant_type]
16
+ end
17
+ end
18
+ end
@@ -0,0 +1,35 @@
1
+ module Privy
2
+ module Models
3
+ type oauth_token_refresh_token_request_body =
4
+ {
5
+ grant_type: Privy::Models::OAuthTokenRefreshTokenRequestBody::grant_type,
6
+ refresh_token: String
7
+ }
8
+
9
+ class OAuthTokenRefreshTokenRequestBody < Privy::Internal::Type::BaseModel
10
+ attr_accessor grant_type: Privy::Models::OAuthTokenRefreshTokenRequestBody::grant_type
11
+
12
+ attr_accessor refresh_token: String
13
+
14
+ def initialize: (
15
+ grant_type: Privy::Models::OAuthTokenRefreshTokenRequestBody::grant_type,
16
+ refresh_token: String
17
+ ) -> void
18
+
19
+ def to_hash: -> {
20
+ grant_type: Privy::Models::OAuthTokenRefreshTokenRequestBody::grant_type,
21
+ refresh_token: String
22
+ }
23
+
24
+ type grant_type = :refresh_token
25
+
26
+ module GrantType
27
+ extend Privy::Internal::Type::Enum
28
+
29
+ REFRESH_TOKEN: :refresh_token
30
+
31
+ def self?.values: -> ::Array[Privy::Models::OAuthTokenRefreshTokenRequestBody::grant_type]
32
+ end
33
+ end
34
+ end
35
+ end
@@ -0,0 +1,14 @@
1
+ module Privy
2
+ module Models
3
+ type oauth_token_request_body =
4
+ Privy::OAuthTokenAuthorizationCodeRequestBody
5
+ | Privy::OAuthTokenDeviceCodeRequestBody
6
+ | Privy::OAuthTokenRefreshTokenRequestBody
7
+
8
+ module OAuthTokenRequestBody
9
+ extend Privy::Internal::Type::Union
10
+
11
+ def self?.variants: -> ::Array[Privy::Models::oauth_token_request_body]
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,49 @@
1
+ module Privy
2
+ module Models
3
+ type oauth_token_success_response =
4
+ {
5
+ access_token: String,
6
+ token_type: Privy::Models::OAuthTokenSuccessResponse::token_type,
7
+ expires_in: Float,
8
+ refresh_token: String
9
+ }
10
+
11
+ class OAuthTokenSuccessResponse < Privy::Internal::Type::BaseModel
12
+ attr_accessor access_token: String
13
+
14
+ attr_accessor token_type: Privy::Models::OAuthTokenSuccessResponse::token_type
15
+
16
+ attr_reader expires_in: Float?
17
+
18
+ def expires_in=: (Float) -> Float
19
+
20
+ attr_reader refresh_token: String?
21
+
22
+ def refresh_token=: (String) -> String
23
+
24
+ def initialize: (
25
+ access_token: String,
26
+ token_type: Privy::Models::OAuthTokenSuccessResponse::token_type,
27
+ ?expires_in: Float,
28
+ ?refresh_token: String
29
+ ) -> void
30
+
31
+ def to_hash: -> {
32
+ access_token: String,
33
+ token_type: Privy::Models::OAuthTokenSuccessResponse::token_type,
34
+ expires_in: Float,
35
+ refresh_token: String
36
+ }
37
+
38
+ type token_type = :Bearer
39
+
40
+ module TokenType
41
+ extend Privy::Internal::Type::Enum
42
+
43
+ BEARER: :Bearer
44
+
45
+ def self?.values: -> ::Array[Privy::Models::OAuthTokenSuccessResponse::token_type]
46
+ end
47
+ end
48
+ end
49
+ end
@@ -0,0 +1,22 @@
1
+ module Privy
2
+ module Models
3
+ type onramp_session_fees =
4
+ { network_fee_amount: String?, transaction_fee_amount: String? }
5
+
6
+ class OnrampSessionFees < Privy::Internal::Type::BaseModel
7
+ attr_accessor network_fee_amount: String?
8
+
9
+ attr_accessor transaction_fee_amount: String?
10
+
11
+ def initialize: (
12
+ network_fee_amount: String?,
13
+ transaction_fee_amount: String?
14
+ ) -> void
15
+
16
+ def to_hash: -> {
17
+ network_fee_amount: String?,
18
+ transaction_fee_amount: String?
19
+ }
20
+ end
21
+ end
22
+ end
@@ -0,0 +1,53 @@
1
+ module Privy
2
+ module Models
3
+ type onramp_session_transaction_details =
4
+ {
5
+ destination_amount: String?,
6
+ destination_currency: String?,
7
+ destination_network: String?,
8
+ fees: Privy::OnrampSessionTransactionDetails::Fees,
9
+ source_amount: String?,
10
+ source_currency: String?
11
+ }
12
+
13
+ class OnrampSessionTransactionDetails < Privy::Internal::Type::BaseModel
14
+ attr_accessor destination_amount: String?
15
+
16
+ attr_accessor destination_currency: String?
17
+
18
+ attr_accessor destination_network: String?
19
+
20
+ attr_accessor fees: Privy::OnrampSessionTransactionDetails::Fees
21
+
22
+ attr_accessor source_amount: String?
23
+
24
+ attr_accessor source_currency: String?
25
+
26
+ def initialize: (
27
+ destination_amount: String?,
28
+ destination_currency: String?,
29
+ destination_network: String?,
30
+ fees: Privy::OnrampSessionTransactionDetails::Fees,
31
+ source_amount: String?,
32
+ source_currency: String?
33
+ ) -> void
34
+
35
+ def to_hash: -> {
36
+ destination_amount: String?,
37
+ destination_currency: String?,
38
+ destination_network: String?,
39
+ fees: Privy::OnrampSessionTransactionDetails::Fees,
40
+ source_amount: String?,
41
+ source_currency: String?
42
+ }
43
+
44
+ type fees = { }
45
+
46
+ class Fees < Privy::Models::OnrampSessionFees
47
+ def initialize: -> void
48
+
49
+ def to_hash: -> { }
50
+ end
51
+ end
52
+ end
53
+ end