privy_ruby 0.0.2 → 0.1.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 (177) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +21 -0
  3. data/README.md +1 -1
  4. data/lib/privy/base58.rb +41 -0
  5. data/lib/privy/client.rb +8 -0
  6. data/lib/privy/cryptography.rb +34 -0
  7. data/lib/privy/models/create_link_auth_intent_input.rb +17 -0
  8. data/lib/privy/models/create_link_auth_intent_response.rb +36 -0
  9. data/lib/privy/models/create_stripe_onramp_session_input.rb +33 -0
  10. data/lib/privy/models/create_stripe_onramp_session_response.rb +23 -0
  11. data/lib/privy/models/device_authorization_response.rb +63 -0
  12. data/lib/privy/models/earn_incentive_reward_entry.rb +50 -0
  13. data/lib/privy/models/earn_incentive_rewards_query.rb +18 -0
  14. data/lib/privy/models/earn_incentive_rewards_response.rb +19 -0
  15. data/lib/privy/models/exchange_stripe_tokens_input.rb +23 -0
  16. data/lib/privy/models/exchange_stripe_tokens_response.rb +17 -0
  17. data/lib/privy/models/fiat_onramp_provider.rb +2 -0
  18. data/lib/privy/models/fiat_onramp_stripe_sdk_session_response.rb +45 -0
  19. data/lib/privy/models/fiat_onramp_url_session_response.rb +39 -0
  20. data/lib/privy/models/get_fiat_onramp_url_response.rb +12 -14
  21. data/lib/privy/models/get_stripe_crypto_customer_response.rb +39 -0
  22. data/lib/privy/models/kraken_embed_custom_order_cancelled_webhook_payload.rb +66 -0
  23. data/lib/privy/models/kraken_embed_custom_order_executed_webhook_payload.rb +54 -0
  24. data/lib/privy/models/kraken_embed_custom_order_execution_failed_webhook_payload.rb +67 -0
  25. data/lib/privy/models/link_auth_intent_created.rb +35 -0
  26. data/lib/privy/models/link_auth_intent_no_account.rb +27 -0
  27. data/lib/privy/models/list_stripe_consumer_wallets_response.rb +17 -0
  28. data/lib/privy/models/list_stripe_payment_tokens_response.rb +17 -0
  29. data/lib/privy/models/onramp_session_params.rb +61 -0
  30. data/lib/privy/models/refresh_stripe_quote_response.rb +18 -0
  31. data/lib/privy/models/rule_delete_intent_response.rb +63 -0
  32. data/lib/privy/models/rule_intent_response.rb +0 -1
  33. data/lib/privy/models/rule_mutate_intent_response.rb +64 -0
  34. data/lib/privy/models/stripe_consumer_wallet.rb +29 -0
  35. data/lib/privy/models/stripe_crypto_customer_active.rb +39 -0
  36. data/lib/privy/models/stripe_crypto_customer_expired.rb +33 -0
  37. data/lib/privy/models/stripe_crypto_customer_none.rb +27 -0
  38. data/lib/privy/models/stripe_onramp_checkout_response.rb +25 -0
  39. data/lib/privy/models/stripe_onramp_session_status.rb +17 -0
  40. data/lib/privy/models/stripe_payment_token.rb +23 -0
  41. data/lib/privy/models/stripe_quote.rb +17 -0
  42. data/lib/privy/models/stripe_transaction_details.rb +17 -0
  43. data/lib/privy/models/stripe_verification.rb +23 -0
  44. data/lib/privy/models/swap_action_response.rb +9 -1
  45. data/lib/privy/models/swap_destination.rb +13 -4
  46. data/lib/privy/models/swap_quote_destination.rb +15 -4
  47. data/lib/privy/models/swap_quote_request_body.rb +9 -1
  48. data/lib/privy/models/swap_quote_response.rb +25 -1
  49. data/lib/privy/models/swap_request_body.rb +9 -1
  50. data/lib/privy/models/wallets/swap_execute_params.rb +45 -0
  51. data/lib/privy/models/wallets/swap_quote_params.rb +36 -0
  52. data/lib/privy/models.rb +71 -4
  53. data/lib/privy/public_api/privy_client.rb +2 -1
  54. data/lib/privy/public_api/services/earn/ethereum/incentive.rb +61 -0
  55. data/lib/privy/public_api/services/earn/ethereum.rb +131 -0
  56. data/lib/privy/public_api/services/earn.rb +18 -0
  57. data/lib/privy/public_api/services/key_quorums.rb +7 -1
  58. data/lib/privy/public_api/services/policies.rb +21 -3
  59. data/lib/privy/public_api/services/transactions.rb +14 -0
  60. data/lib/privy/public_api/services/wallets.rb +153 -1
  61. data/lib/privy/resources/intents.rb +6 -6
  62. data/lib/privy/resources/oauth.rb +14 -0
  63. data/lib/privy/resources/onramps.rb +14 -0
  64. data/lib/privy/resources/wallets/swap.rb +105 -0
  65. data/lib/privy/resources/wallets.rb +10 -2
  66. data/lib/privy/version.rb +1 -1
  67. data/lib/privy/wallet_entropy.rb +60 -0
  68. data/lib/privy.rb +47 -4
  69. data/rbi/privy/client.rbi +6 -0
  70. data/rbi/privy/models/create_link_auth_intent_input.rbi +27 -0
  71. data/rbi/privy/models/create_link_auth_intent_response.rbi +68 -0
  72. data/rbi/privy/models/create_stripe_onramp_session_input.rbi +55 -0
  73. data/rbi/privy/models/create_stripe_onramp_session_response.rbi +30 -0
  74. data/rbi/privy/models/device_authorization_response.rbi +81 -0
  75. data/rbi/privy/models/earn_incentive_reward_entry.rbi +73 -0
  76. data/rbi/privy/models/earn_incentive_rewards_query.rbi +28 -0
  77. data/rbi/privy/models/earn_incentive_rewards_response.rbi +35 -0
  78. data/rbi/privy/models/exchange_stripe_tokens_input.rbi +33 -0
  79. data/rbi/privy/models/exchange_stripe_tokens_response.rbi +24 -0
  80. data/rbi/privy/models/fiat_onramp_provider.rbi +3 -0
  81. data/rbi/privy/models/fiat_onramp_stripe_sdk_session_response.rbi +78 -0
  82. data/rbi/privy/models/fiat_onramp_url_session_response.rbi +65 -0
  83. data/rbi/privy/models/get_fiat_onramp_url_response.rbi +12 -15
  84. data/rbi/privy/models/get_stripe_crypto_customer_response.rbi +81 -0
  85. data/rbi/privy/models/kraken_embed_custom_order_cancelled_webhook_payload.rbi +111 -0
  86. data/rbi/privy/models/kraken_embed_custom_order_executed_webhook_payload.rbi +101 -0
  87. data/rbi/privy/models/kraken_embed_custom_order_execution_failed_webhook_payload.rbi +111 -0
  88. data/rbi/privy/models/link_auth_intent_created.rbi +60 -0
  89. data/rbi/privy/models/link_auth_intent_no_account.rbi +54 -0
  90. data/rbi/privy/models/list_stripe_consumer_wallets_response.rbi +31 -0
  91. data/rbi/privy/models/list_stripe_payment_tokens_response.rbi +31 -0
  92. data/rbi/privy/models/onramp_session_params.rbi +76 -0
  93. data/rbi/privy/models/refresh_stripe_quote_response.rbi +33 -0
  94. data/rbi/privy/models/rule_delete_intent_response.rbi +113 -0
  95. data/rbi/privy/models/rule_mutate_intent_response.rbi +113 -0
  96. data/rbi/privy/models/stripe_consumer_wallet.rbi +38 -0
  97. data/rbi/privy/models/stripe_crypto_customer_active.rbi +68 -0
  98. data/rbi/privy/models/stripe_crypto_customer_expired.rbi +63 -0
  99. data/rbi/privy/models/stripe_crypto_customer_none.rbi +53 -0
  100. data/rbi/privy/models/stripe_onramp_checkout_response.rbi +51 -0
  101. data/rbi/privy/models/stripe_onramp_session_status.rbi +26 -0
  102. data/rbi/privy/models/stripe_payment_token.rbi +27 -0
  103. data/rbi/privy/models/stripe_quote.rbi +22 -0
  104. data/rbi/privy/models/stripe_transaction_details.rbi +24 -0
  105. data/rbi/privy/models/stripe_verification.rbi +27 -0
  106. data/rbi/privy/models/swap_action_response.rbi +17 -27
  107. data/rbi/privy/models/swap_destination.rbi +26 -7
  108. data/rbi/privy/models/swap_quote_destination.rbi +30 -7
  109. data/rbi/privy/models/swap_quote_request_body.rbi +11 -0
  110. data/rbi/privy/models/swap_quote_response.rbi +54 -3
  111. data/rbi/privy/models/swap_request_body.rbi +11 -0
  112. data/rbi/privy/models/wallets/swap_execute_params.rbi +71 -0
  113. data/rbi/privy/models/wallets/swap_quote_params.rbi +58 -0
  114. data/rbi/privy/models.rbi +76 -5
  115. data/rbi/privy/resources/intents.rbi +3 -3
  116. data/rbi/privy/resources/oauth.rbi +12 -0
  117. data/rbi/privy/resources/onramps.rbi +12 -0
  118. data/rbi/privy/resources/wallets/swap.rbi +94 -0
  119. data/rbi/privy/resources/wallets.rbi +9 -2
  120. data/sig/privy/client.rbs +4 -0
  121. data/sig/privy/models/create_link_auth_intent_input.rbs +15 -0
  122. data/sig/privy/models/create_link_auth_intent_response.rbs +26 -0
  123. data/sig/privy/models/create_stripe_onramp_session_input.rbs +30 -0
  124. data/sig/privy/models/create_stripe_onramp_session_response.rbs +16 -0
  125. data/sig/privy/models/device_authorization_response.rbs +45 -0
  126. data/sig/privy/models/earn_incentive_reward_entry.rbs +42 -0
  127. data/sig/privy/models/earn_incentive_rewards_query.rbs +13 -0
  128. data/sig/privy/models/earn_incentive_rewards_response.rbs +16 -0
  129. data/sig/privy/models/exchange_stripe_tokens_input.rbs +19 -0
  130. data/sig/privy/models/exchange_stripe_tokens_response.rbs +13 -0
  131. data/sig/privy/models/fiat_onramp_provider.rbs +4 -0
  132. data/sig/privy/models/fiat_onramp_stripe_sdk_session_response.rbs +45 -0
  133. data/sig/privy/models/fiat_onramp_url_session_response.rbs +40 -0
  134. data/sig/privy/models/get_fiat_onramp_url_response.rbs +6 -8
  135. data/sig/privy/models/get_stripe_crypto_customer_response.rbs +29 -0
  136. data/sig/privy/models/kraken_embed_custom_order_cancelled_webhook_payload.rbs +50 -0
  137. data/sig/privy/models/kraken_embed_custom_order_executed_webhook_payload.rbs +45 -0
  138. data/sig/privy/models/kraken_embed_custom_order_execution_failed_webhook_payload.rbs +50 -0
  139. data/sig/privy/models/link_auth_intent_created.rbs +32 -0
  140. data/sig/privy/models/link_auth_intent_no_account.rbs +26 -0
  141. data/sig/privy/models/list_stripe_consumer_wallets_response.rbs +14 -0
  142. data/sig/privy/models/list_stripe_payment_tokens_response.rbs +14 -0
  143. data/sig/privy/models/onramp_session_params.rbs +50 -0
  144. data/sig/privy/models/refresh_stripe_quote_response.rbs +13 -0
  145. data/sig/privy/models/rule_delete_intent_response.rbs +66 -0
  146. data/sig/privy/models/rule_mutate_intent_response.rbs +66 -0
  147. data/sig/privy/models/stripe_consumer_wallet.rbs +22 -0
  148. data/sig/privy/models/stripe_crypto_customer_active.rbs +40 -0
  149. data/sig/privy/models/stripe_crypto_customer_expired.rbs +35 -0
  150. data/sig/privy/models/stripe_crypto_customer_none.rbs +28 -0
  151. data/sig/privy/models/stripe_onramp_checkout_response.rbs +29 -0
  152. data/sig/privy/models/stripe_onramp_session_status.rbs +15 -0
  153. data/sig/privy/models/stripe_payment_token.rbs +15 -0
  154. data/sig/privy/models/stripe_quote.rbs +13 -0
  155. data/sig/privy/models/stripe_transaction_details.rbs +13 -0
  156. data/sig/privy/models/stripe_verification.rbs +15 -0
  157. data/sig/privy/models/swap_action_response.rbs +7 -0
  158. data/sig/privy/models/swap_destination.rbs +16 -3
  159. data/sig/privy/models/swap_quote_destination.rbs +16 -3
  160. data/sig/privy/models/swap_quote_request_body.rbs +9 -0
  161. data/sig/privy/models/swap_quote_response.rbs +26 -3
  162. data/sig/privy/models/swap_request_body.rbs +9 -0
  163. data/sig/privy/models/wallets/swap_execute_params.rbs +44 -0
  164. data/sig/privy/models/wallets/swap_quote_params.rbs +34 -0
  165. data/sig/privy/models.rbs +69 -5
  166. data/sig/privy/resources/intents.rbs +3 -3
  167. data/sig/privy/resources/oauth.rbs +7 -0
  168. data/sig/privy/resources/onramps.rbs +7 -0
  169. data/sig/privy/resources/wallets/swap.rbs +34 -0
  170. data/sig/privy/resources/wallets.rbs +2 -0
  171. metadata +125 -8
  172. data/lib/privy/models/gas_sponsorship_configuration.rb +0 -29
  173. data/lib/privy/models/gas_sponsorship_configuration_input.rb +0 -29
  174. data/rbi/privy/models/gas_sponsorship_configuration.rbi +0 -48
  175. data/rbi/privy/models/gas_sponsorship_configuration_input.rbi +0 -60
  176. data/sig/privy/models/gas_sponsorship_configuration.rbs +0 -30
  177. data/sig/privy/models/gas_sponsorship_configuration_input.rbs +0 -36
@@ -0,0 +1,33 @@
1
+ # typed: strong
2
+
3
+ module Privy
4
+ module Models
5
+ class ExchangeStripeTokensInput < Privy::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(Privy::ExchangeStripeTokensInput, Privy::Internal::AnyHash)
9
+ end
10
+
11
+ sig { returns(String) }
12
+ attr_accessor :auth_intent_id
13
+
14
+ sig { returns(String) }
15
+ attr_accessor :crypto_customer_id
16
+
17
+ # Input for exchanging a Link auth intent for OAuth tokens.
18
+ sig do
19
+ params(auth_intent_id: String, crypto_customer_id: String).returns(
20
+ T.attached_class
21
+ )
22
+ end
23
+ def self.new(auth_intent_id:, crypto_customer_id:)
24
+ end
25
+
26
+ sig do
27
+ override.returns({ auth_intent_id: String, crypto_customer_id: String })
28
+ end
29
+ def to_hash
30
+ end
31
+ end
32
+ end
33
+ end
@@ -0,0 +1,24 @@
1
+ # typed: strong
2
+
3
+ module Privy
4
+ module Models
5
+ class ExchangeStripeTokensResponse < Privy::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(Privy::ExchangeStripeTokensResponse, Privy::Internal::AnyHash)
9
+ end
10
+
11
+ sig { returns(String) }
12
+ attr_accessor :crypto_customer_id
13
+
14
+ # Confirmation that tokens were exchanged and stored.
15
+ sig { params(crypto_customer_id: String).returns(T.attached_class) }
16
+ def self.new(crypto_customer_id:)
17
+ end
18
+
19
+ sig { override.returns({ crypto_customer_id: String }) }
20
+ def to_hash
21
+ end
22
+ end
23
+ end
24
+ end
@@ -18,6 +18,9 @@ module Privy
18
18
  COINBASE = T.let(:coinbase, Privy::FiatOnrampProvider::TaggedSymbol)
19
19
  COINBASE_SANDBOX =
20
20
  T.let(:"coinbase-sandbox", Privy::FiatOnrampProvider::TaggedSymbol)
21
+ STRIPE = T.let(:stripe, Privy::FiatOnrampProvider::TaggedSymbol)
22
+ STRIPE_SANDBOX =
23
+ T.let(:"stripe-sandbox", Privy::FiatOnrampProvider::TaggedSymbol)
21
24
 
22
25
  sig do
23
26
  override.returns(T::Array[Privy::FiatOnrampProvider::TaggedSymbol])
@@ -0,0 +1,78 @@
1
+ # typed: strong
2
+
3
+ module Privy
4
+ module Models
5
+ class FiatOnrampStripeSDKSessionResponse < Privy::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(
9
+ Privy::FiatOnrampStripeSDKSessionResponse,
10
+ Privy::Internal::AnyHash
11
+ )
12
+ end
13
+
14
+ sig { returns(String) }
15
+ attr_accessor :network
16
+
17
+ sig { returns(String) }
18
+ attr_accessor :publishable_key
19
+
20
+ sig { returns(String) }
21
+ attr_accessor :session_id
22
+
23
+ sig { returns(Privy::FiatOnrampStripeSDKSessionResponse::Type::OrSymbol) }
24
+ attr_accessor :type
25
+
26
+ # Provider session initialization for embedded SDK providers (Stripe).
27
+ sig do
28
+ params(
29
+ network: String,
30
+ publishable_key: String,
31
+ session_id: String,
32
+ type: Privy::FiatOnrampStripeSDKSessionResponse::Type::OrSymbol
33
+ ).returns(T.attached_class)
34
+ end
35
+ def self.new(network:, publishable_key:, session_id:, type:)
36
+ end
37
+
38
+ sig do
39
+ override.returns(
40
+ {
41
+ network: String,
42
+ publishable_key: String,
43
+ session_id: String,
44
+ type: Privy::FiatOnrampStripeSDKSessionResponse::Type::OrSymbol
45
+ }
46
+ )
47
+ end
48
+ def to_hash
49
+ end
50
+
51
+ module Type
52
+ extend Privy::Internal::Type::Enum
53
+
54
+ TaggedSymbol =
55
+ T.type_alias do
56
+ T.all(Symbol, Privy::FiatOnrampStripeSDKSessionResponse::Type)
57
+ end
58
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
59
+
60
+ STRIPE_SDK =
61
+ T.let(
62
+ :"stripe-sdk",
63
+ Privy::FiatOnrampStripeSDKSessionResponse::Type::TaggedSymbol
64
+ )
65
+
66
+ sig do
67
+ override.returns(
68
+ T::Array[
69
+ Privy::FiatOnrampStripeSDKSessionResponse::Type::TaggedSymbol
70
+ ]
71
+ )
72
+ end
73
+ def self.values
74
+ end
75
+ end
76
+ end
77
+ end
78
+ end
@@ -0,0 +1,65 @@
1
+ # typed: strong
2
+
3
+ module Privy
4
+ module Models
5
+ class FiatOnrampURLSessionResponse < Privy::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(Privy::FiatOnrampURLSessionResponse, Privy::Internal::AnyHash)
9
+ end
10
+
11
+ sig { returns(String) }
12
+ attr_accessor :session_id
13
+
14
+ sig { returns(Privy::FiatOnrampURLSessionResponse::Type::OrSymbol) }
15
+ attr_accessor :type
16
+
17
+ sig { returns(String) }
18
+ attr_accessor :url
19
+
20
+ # Provider session initialization for popup-based providers.
21
+ sig do
22
+ params(
23
+ session_id: String,
24
+ type: Privy::FiatOnrampURLSessionResponse::Type::OrSymbol,
25
+ url: String
26
+ ).returns(T.attached_class)
27
+ end
28
+ def self.new(session_id:, type:, url:)
29
+ end
30
+
31
+ sig do
32
+ override.returns(
33
+ {
34
+ session_id: String,
35
+ type: Privy::FiatOnrampURLSessionResponse::Type::OrSymbol,
36
+ url: String
37
+ }
38
+ )
39
+ end
40
+ def to_hash
41
+ end
42
+
43
+ module Type
44
+ extend Privy::Internal::Type::Enum
45
+
46
+ TaggedSymbol =
47
+ T.type_alias do
48
+ T.all(Symbol, Privy::FiatOnrampURLSessionResponse::Type)
49
+ end
50
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
51
+
52
+ URL =
53
+ T.let(:url, Privy::FiatOnrampURLSessionResponse::Type::TaggedSymbol)
54
+
55
+ sig do
56
+ override.returns(
57
+ T::Array[Privy::FiatOnrampURLSessionResponse::Type::TaggedSymbol]
58
+ )
59
+ end
60
+ def self.values
61
+ end
62
+ end
63
+ end
64
+ end
65
+ end
@@ -2,25 +2,22 @@
2
2
 
3
3
  module Privy
4
4
  module Models
5
- class GetFiatOnrampURLResponse < Privy::Internal::Type::BaseModel
6
- OrHash =
5
+ # Provider session initialization — either a hosted URL or embedded SDK config.
6
+ module GetFiatOnrampURLResponse
7
+ extend Privy::Internal::Type::Union
8
+
9
+ Variants =
7
10
  T.type_alias do
8
- T.any(Privy::GetFiatOnrampURLResponse, Privy::Internal::AnyHash)
11
+ T.any(
12
+ Privy::FiatOnrampURLSessionResponse,
13
+ Privy::FiatOnrampStripeSDKSessionResponse
14
+ )
9
15
  end
10
16
 
11
- sig { returns(String) }
12
- attr_accessor :session_id
13
-
14
- sig { returns(String) }
15
- attr_accessor :url
16
-
17
- # The response containing a fiat onramp provider session URL.
18
- sig { params(session_id: String, url: String).returns(T.attached_class) }
19
- def self.new(session_id:, url:)
17
+ sig do
18
+ override.returns(T::Array[Privy::GetFiatOnrampURLResponse::Variants])
20
19
  end
21
-
22
- sig { override.returns({ session_id: String, url: String }) }
23
- def to_hash
20
+ def self.variants
24
21
  end
25
22
  end
26
23
  end
@@ -0,0 +1,81 @@
1
+ # typed: strong
2
+
3
+ module Privy
4
+ module Models
5
+ class GetStripeCryptoCustomerResponse < Privy::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(
9
+ Privy::GetStripeCryptoCustomerResponse,
10
+ Privy::Internal::AnyHash
11
+ )
12
+ end
13
+
14
+ # Active onramp session with customer verifications.
15
+ sig do
16
+ returns(
17
+ T.any(
18
+ Privy::StripeCryptoCustomerActive,
19
+ Privy::StripeCryptoCustomerExpired,
20
+ Privy::StripeCryptoCustomerNone
21
+ )
22
+ )
23
+ end
24
+ attr_accessor :data
25
+
26
+ # Stripe onramp session status and customer verification info.
27
+ sig do
28
+ params(
29
+ data:
30
+ T.any(
31
+ Privy::StripeCryptoCustomerActive::OrHash,
32
+ Privy::StripeCryptoCustomerExpired::OrHash,
33
+ Privy::StripeCryptoCustomerNone::OrHash
34
+ )
35
+ ).returns(T.attached_class)
36
+ end
37
+ def self.new(
38
+ # Active onramp session with customer verifications.
39
+ data:
40
+ )
41
+ end
42
+
43
+ sig do
44
+ override.returns(
45
+ {
46
+ data:
47
+ T.any(
48
+ Privy::StripeCryptoCustomerActive,
49
+ Privy::StripeCryptoCustomerExpired,
50
+ Privy::StripeCryptoCustomerNone
51
+ )
52
+ }
53
+ )
54
+ end
55
+ def to_hash
56
+ end
57
+
58
+ # Active onramp session with customer verifications.
59
+ module Data
60
+ extend Privy::Internal::Type::Union
61
+
62
+ Variants =
63
+ T.type_alias do
64
+ T.any(
65
+ Privy::StripeCryptoCustomerActive,
66
+ Privy::StripeCryptoCustomerExpired,
67
+ Privy::StripeCryptoCustomerNone
68
+ )
69
+ end
70
+
71
+ sig do
72
+ override.returns(
73
+ T::Array[Privy::GetStripeCryptoCustomerResponse::Data::Variants]
74
+ )
75
+ end
76
+ def self.variants
77
+ end
78
+ end
79
+ end
80
+ end
81
+ end
@@ -0,0 +1,111 @@
1
+ # typed: strong
2
+
3
+ module Privy
4
+ module Models
5
+ class KrakenEmbedCustomOrderCancelledWebhookPayload < Privy::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(
9
+ Privy::KrakenEmbedCustomOrderCancelledWebhookPayload,
10
+ Privy::Internal::AnyHash
11
+ )
12
+ end
13
+
14
+ # ISO 8601 timestamp of when the custom order was cancelled.
15
+ sig { returns(String) }
16
+ attr_accessor :cancelled_at
17
+
18
+ # The ID of the cancelled custom order.
19
+ sig { returns(String) }
20
+ attr_accessor :custom_order_id
21
+
22
+ # A human-readable description of why the custom order was cancelled. Intended for
23
+ # display and logging purposes only.
24
+ sig { returns(String) }
25
+ attr_accessor :reason
26
+
27
+ # The type of webhook event.
28
+ sig do
29
+ returns(
30
+ Privy::KrakenEmbedCustomOrderCancelledWebhookPayload::Type::OrSymbol
31
+ )
32
+ end
33
+ attr_accessor :type
34
+
35
+ # The ID of the user.
36
+ sig { returns(String) }
37
+ attr_accessor :user_id
38
+
39
+ # Payload for the kraken_embed.custom_order.cancelled webhook event.
40
+ sig do
41
+ params(
42
+ cancelled_at: String,
43
+ custom_order_id: String,
44
+ reason: String,
45
+ type:
46
+ Privy::KrakenEmbedCustomOrderCancelledWebhookPayload::Type::OrSymbol,
47
+ user_id: String
48
+ ).returns(T.attached_class)
49
+ end
50
+ def self.new(
51
+ # ISO 8601 timestamp of when the custom order was cancelled.
52
+ cancelled_at:,
53
+ # The ID of the cancelled custom order.
54
+ custom_order_id:,
55
+ # A human-readable description of why the custom order was cancelled. Intended for
56
+ # display and logging purposes only.
57
+ reason:,
58
+ # The type of webhook event.
59
+ type:,
60
+ # The ID of the user.
61
+ user_id:
62
+ )
63
+ end
64
+
65
+ sig do
66
+ override.returns(
67
+ {
68
+ cancelled_at: String,
69
+ custom_order_id: String,
70
+ reason: String,
71
+ type:
72
+ Privy::KrakenEmbedCustomOrderCancelledWebhookPayload::Type::OrSymbol,
73
+ user_id: String
74
+ }
75
+ )
76
+ end
77
+ def to_hash
78
+ end
79
+
80
+ # The type of webhook event.
81
+ module Type
82
+ extend Privy::Internal::Type::Enum
83
+
84
+ TaggedSymbol =
85
+ T.type_alias do
86
+ T.all(
87
+ Symbol,
88
+ Privy::KrakenEmbedCustomOrderCancelledWebhookPayload::Type
89
+ )
90
+ end
91
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
92
+
93
+ KRAKEN_EMBED_CUSTOM_ORDER_CANCELLED =
94
+ T.let(
95
+ :"kraken_embed.custom_order.cancelled",
96
+ Privy::KrakenEmbedCustomOrderCancelledWebhookPayload::Type::TaggedSymbol
97
+ )
98
+
99
+ sig do
100
+ override.returns(
101
+ T::Array[
102
+ Privy::KrakenEmbedCustomOrderCancelledWebhookPayload::Type::TaggedSymbol
103
+ ]
104
+ )
105
+ end
106
+ def self.values
107
+ end
108
+ end
109
+ end
110
+ end
111
+ end
@@ -0,0 +1,101 @@
1
+ # typed: strong
2
+
3
+ module Privy
4
+ module Models
5
+ class KrakenEmbedCustomOrderExecutedWebhookPayload < Privy::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(
9
+ Privy::KrakenEmbedCustomOrderExecutedWebhookPayload,
10
+ Privy::Internal::AnyHash
11
+ )
12
+ end
13
+
14
+ # The ID of the executed custom order.
15
+ sig { returns(String) }
16
+ attr_accessor :custom_order_id
17
+
18
+ # ISO 8601 timestamp of when the custom order was executed.
19
+ sig { returns(String) }
20
+ attr_accessor :executed_at
21
+
22
+ # The type of webhook event.
23
+ sig do
24
+ returns(
25
+ Privy::KrakenEmbedCustomOrderExecutedWebhookPayload::Type::OrSymbol
26
+ )
27
+ end
28
+ attr_accessor :type
29
+
30
+ # The ID of the user.
31
+ sig { returns(String) }
32
+ attr_accessor :user_id
33
+
34
+ # Payload for the kraken_embed.custom_order.executed webhook event.
35
+ sig do
36
+ params(
37
+ custom_order_id: String,
38
+ executed_at: String,
39
+ type:
40
+ Privy::KrakenEmbedCustomOrderExecutedWebhookPayload::Type::OrSymbol,
41
+ user_id: String
42
+ ).returns(T.attached_class)
43
+ end
44
+ def self.new(
45
+ # The ID of the executed custom order.
46
+ custom_order_id:,
47
+ # ISO 8601 timestamp of when the custom order was executed.
48
+ executed_at:,
49
+ # The type of webhook event.
50
+ type:,
51
+ # The ID of the user.
52
+ user_id:
53
+ )
54
+ end
55
+
56
+ sig do
57
+ override.returns(
58
+ {
59
+ custom_order_id: String,
60
+ executed_at: String,
61
+ type:
62
+ Privy::KrakenEmbedCustomOrderExecutedWebhookPayload::Type::OrSymbol,
63
+ user_id: String
64
+ }
65
+ )
66
+ end
67
+ def to_hash
68
+ end
69
+
70
+ # The type of webhook event.
71
+ module Type
72
+ extend Privy::Internal::Type::Enum
73
+
74
+ TaggedSymbol =
75
+ T.type_alias do
76
+ T.all(
77
+ Symbol,
78
+ Privy::KrakenEmbedCustomOrderExecutedWebhookPayload::Type
79
+ )
80
+ end
81
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
82
+
83
+ KRAKEN_EMBED_CUSTOM_ORDER_EXECUTED =
84
+ T.let(
85
+ :"kraken_embed.custom_order.executed",
86
+ Privy::KrakenEmbedCustomOrderExecutedWebhookPayload::Type::TaggedSymbol
87
+ )
88
+
89
+ sig do
90
+ override.returns(
91
+ T::Array[
92
+ Privy::KrakenEmbedCustomOrderExecutedWebhookPayload::Type::TaggedSymbol
93
+ ]
94
+ )
95
+ end
96
+ def self.values
97
+ end
98
+ end
99
+ end
100
+ end
101
+ end
@@ -0,0 +1,111 @@
1
+ # typed: strong
2
+
3
+ module Privy
4
+ module Models
5
+ class KrakenEmbedCustomOrderExecutionFailedWebhookPayload < Privy::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(
9
+ Privy::KrakenEmbedCustomOrderExecutionFailedWebhookPayload,
10
+ Privy::Internal::AnyHash
11
+ )
12
+ end
13
+
14
+ # The ID of the custom order that failed to execute.
15
+ sig { returns(String) }
16
+ attr_accessor :custom_order_id
17
+
18
+ # ISO 8601 timestamp of when the custom order execution failed.
19
+ sig { returns(String) }
20
+ attr_accessor :failed_at
21
+
22
+ # A human-readable description of why the custom order execution failed. Intended
23
+ # for display and logging purposes only.
24
+ sig { returns(String) }
25
+ attr_accessor :reason
26
+
27
+ # The type of webhook event.
28
+ sig do
29
+ returns(
30
+ Privy::KrakenEmbedCustomOrderExecutionFailedWebhookPayload::Type::OrSymbol
31
+ )
32
+ end
33
+ attr_accessor :type
34
+
35
+ # The ID of the user.
36
+ sig { returns(String) }
37
+ attr_accessor :user_id
38
+
39
+ # Payload for the kraken_embed.custom_order.execution_failed webhook event.
40
+ sig do
41
+ params(
42
+ custom_order_id: String,
43
+ failed_at: String,
44
+ reason: String,
45
+ type:
46
+ Privy::KrakenEmbedCustomOrderExecutionFailedWebhookPayload::Type::OrSymbol,
47
+ user_id: String
48
+ ).returns(T.attached_class)
49
+ end
50
+ def self.new(
51
+ # The ID of the custom order that failed to execute.
52
+ custom_order_id:,
53
+ # ISO 8601 timestamp of when the custom order execution failed.
54
+ failed_at:,
55
+ # A human-readable description of why the custom order execution failed. Intended
56
+ # for display and logging purposes only.
57
+ reason:,
58
+ # The type of webhook event.
59
+ type:,
60
+ # The ID of the user.
61
+ user_id:
62
+ )
63
+ end
64
+
65
+ sig do
66
+ override.returns(
67
+ {
68
+ custom_order_id: String,
69
+ failed_at: String,
70
+ reason: String,
71
+ type:
72
+ Privy::KrakenEmbedCustomOrderExecutionFailedWebhookPayload::Type::OrSymbol,
73
+ user_id: String
74
+ }
75
+ )
76
+ end
77
+ def to_hash
78
+ end
79
+
80
+ # The type of webhook event.
81
+ module Type
82
+ extend Privy::Internal::Type::Enum
83
+
84
+ TaggedSymbol =
85
+ T.type_alias do
86
+ T.all(
87
+ Symbol,
88
+ Privy::KrakenEmbedCustomOrderExecutionFailedWebhookPayload::Type
89
+ )
90
+ end
91
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
92
+
93
+ KRAKEN_EMBED_CUSTOM_ORDER_EXECUTION_FAILED =
94
+ T.let(
95
+ :"kraken_embed.custom_order.execution_failed",
96
+ Privy::KrakenEmbedCustomOrderExecutionFailedWebhookPayload::Type::TaggedSymbol
97
+ )
98
+
99
+ sig do
100
+ override.returns(
101
+ T::Array[
102
+ Privy::KrakenEmbedCustomOrderExecutionFailedWebhookPayload::Type::TaggedSymbol
103
+ ]
104
+ )
105
+ end
106
+ def self.values
107
+ end
108
+ end
109
+ end
110
+ end
111
+ end