checkout-intents 0.0.2

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 (137) hide show
  1. checksums.yaml +7 -0
  2. data/.ignore +2 -0
  3. data/CHANGELOG.md +16 -0
  4. data/README.md +358 -0
  5. data/SECURITY.md +27 -0
  6. data/lib/checkout_intents/client.rb +100 -0
  7. data/lib/checkout_intents/errors.rb +228 -0
  8. data/lib/checkout_intents/file_part.rb +58 -0
  9. data/lib/checkout_intents/internal/cursor_pagination.rb +125 -0
  10. data/lib/checkout_intents/internal/transport/base_client.rb +577 -0
  11. data/lib/checkout_intents/internal/transport/pooled_net_requester.rb +210 -0
  12. data/lib/checkout_intents/internal/type/array_of.rb +168 -0
  13. data/lib/checkout_intents/internal/type/base_model.rb +536 -0
  14. data/lib/checkout_intents/internal/type/base_page.rb +55 -0
  15. data/lib/checkout_intents/internal/type/boolean.rb +77 -0
  16. data/lib/checkout_intents/internal/type/converter.rb +327 -0
  17. data/lib/checkout_intents/internal/type/enum.rb +131 -0
  18. data/lib/checkout_intents/internal/type/file_input.rb +111 -0
  19. data/lib/checkout_intents/internal/type/hash_of.rb +188 -0
  20. data/lib/checkout_intents/internal/type/request_parameters.rb +42 -0
  21. data/lib/checkout_intents/internal/type/union.rb +258 -0
  22. data/lib/checkout_intents/internal/type/unknown.rb +81 -0
  23. data/lib/checkout_intents/internal/util.rb +920 -0
  24. data/lib/checkout_intents/internal.rb +20 -0
  25. data/lib/checkout_intents/models/base_checkout_intent.rb +76 -0
  26. data/lib/checkout_intents/models/betas/checkout_session_create_params.rb +148 -0
  27. data/lib/checkout_intents/models/brand_retrieve_params.rb +14 -0
  28. data/lib/checkout_intents/models/brand_retrieve_response.rb +52 -0
  29. data/lib/checkout_intents/models/buyer.rb +69 -0
  30. data/lib/checkout_intents/models/checkout_intent.rb +230 -0
  31. data/lib/checkout_intents/models/checkout_intent_add_payment_params.rb +20 -0
  32. data/lib/checkout_intents/models/checkout_intent_confirm_params.rb +20 -0
  33. data/lib/checkout_intents/models/checkout_intent_create_params.rb +68 -0
  34. data/lib/checkout_intents/models/checkout_intent_list_params.rb +58 -0
  35. data/lib/checkout_intents/models/checkout_intent_purchase_params.rb +74 -0
  36. data/lib/checkout_intents/models/checkout_intent_retrieve_params.rb +14 -0
  37. data/lib/checkout_intents/models/checkout_session.rb +23 -0
  38. data/lib/checkout_intents/models/money.rb +21 -0
  39. data/lib/checkout_intents/models/offer.rb +113 -0
  40. data/lib/checkout_intents/models/payment_method.rb +120 -0
  41. data/lib/checkout_intents/models/variant_selection.rb +33 -0
  42. data/lib/checkout_intents/models.rb +76 -0
  43. data/lib/checkout_intents/request_options.rb +78 -0
  44. data/lib/checkout_intents/resources/betas/checkout_sessions.rb +54 -0
  45. data/lib/checkout_intents/resources/betas.rb +18 -0
  46. data/lib/checkout_intents/resources/brands.rb +37 -0
  47. data/lib/checkout_intents/resources/checkout_intents.rb +173 -0
  48. data/lib/checkout_intents/version.rb +5 -0
  49. data/lib/checkout_intents.rb +77 -0
  50. data/manifest.yaml +17 -0
  51. data/rbi/checkout_intents/client.rbi +74 -0
  52. data/rbi/checkout_intents/errors.rbi +205 -0
  53. data/rbi/checkout_intents/file_part.rbi +37 -0
  54. data/rbi/checkout_intents/internal/cursor_pagination.rbi +74 -0
  55. data/rbi/checkout_intents/internal/transport/base_client.rbi +309 -0
  56. data/rbi/checkout_intents/internal/transport/pooled_net_requester.rbi +84 -0
  57. data/rbi/checkout_intents/internal/type/array_of.rbi +108 -0
  58. data/rbi/checkout_intents/internal/type/base_model.rbi +314 -0
  59. data/rbi/checkout_intents/internal/type/base_page.rbi +43 -0
  60. data/rbi/checkout_intents/internal/type/boolean.rbi +58 -0
  61. data/rbi/checkout_intents/internal/type/converter.rbi +225 -0
  62. data/rbi/checkout_intents/internal/type/enum.rbi +82 -0
  63. data/rbi/checkout_intents/internal/type/file_input.rbi +59 -0
  64. data/rbi/checkout_intents/internal/type/hash_of.rbi +108 -0
  65. data/rbi/checkout_intents/internal/type/request_parameters.rbi +31 -0
  66. data/rbi/checkout_intents/internal/type/union.rbi +134 -0
  67. data/rbi/checkout_intents/internal/type/unknown.rbi +58 -0
  68. data/rbi/checkout_intents/internal/util.rbi +487 -0
  69. data/rbi/checkout_intents/internal.rbi +18 -0
  70. data/rbi/checkout_intents/models/base_checkout_intent.rbi +142 -0
  71. data/rbi/checkout_intents/models/betas/checkout_session_create_params.rbi +281 -0
  72. data/rbi/checkout_intents/models/brand_retrieve_params.rbi +32 -0
  73. data/rbi/checkout_intents/models/brand_retrieve_response.rbi +109 -0
  74. data/rbi/checkout_intents/models/buyer.rbi +92 -0
  75. data/rbi/checkout_intents/models/checkout_intent.rbi +653 -0
  76. data/rbi/checkout_intents/models/checkout_intent_add_payment_params.rbi +59 -0
  77. data/rbi/checkout_intents/models/checkout_intent_confirm_params.rbi +59 -0
  78. data/rbi/checkout_intents/models/checkout_intent_create_params.rbi +141 -0
  79. data/rbi/checkout_intents/models/checkout_intent_list_params.rbi +146 -0
  80. data/rbi/checkout_intents/models/checkout_intent_purchase_params.rbi +165 -0
  81. data/rbi/checkout_intents/models/checkout_intent_retrieve_params.rbi +32 -0
  82. data/rbi/checkout_intents/models/checkout_session.rbi +36 -0
  83. data/rbi/checkout_intents/models/money.rbi +32 -0
  84. data/rbi/checkout_intents/models/offer.rbi +225 -0
  85. data/rbi/checkout_intents/models/payment_method.rbi +292 -0
  86. data/rbi/checkout_intents/models/variant_selection.rbi +55 -0
  87. data/rbi/checkout_intents/models.rbi +40 -0
  88. data/rbi/checkout_intents/request_options.rbi +64 -0
  89. data/rbi/checkout_intents/resources/betas/checkout_sessions.rbi +47 -0
  90. data/rbi/checkout_intents/resources/betas.rbi +15 -0
  91. data/rbi/checkout_intents/resources/brands.rbi +29 -0
  92. data/rbi/checkout_intents/resources/checkout_intents.rbi +165 -0
  93. data/rbi/checkout_intents/version.rbi +5 -0
  94. data/sig/checkout_intents/client.rbs +36 -0
  95. data/sig/checkout_intents/errors.rbs +117 -0
  96. data/sig/checkout_intents/file_part.rbs +21 -0
  97. data/sig/checkout_intents/internal/cursor_pagination.rbs +48 -0
  98. data/sig/checkout_intents/internal/transport/base_client.rbs +133 -0
  99. data/sig/checkout_intents/internal/transport/pooled_net_requester.rbs +48 -0
  100. data/sig/checkout_intents/internal/type/array_of.rbs +48 -0
  101. data/sig/checkout_intents/internal/type/base_model.rbs +104 -0
  102. data/sig/checkout_intents/internal/type/base_page.rbs +24 -0
  103. data/sig/checkout_intents/internal/type/boolean.rbs +26 -0
  104. data/sig/checkout_intents/internal/type/converter.rbs +79 -0
  105. data/sig/checkout_intents/internal/type/enum.rbs +32 -0
  106. data/sig/checkout_intents/internal/type/file_input.rbs +25 -0
  107. data/sig/checkout_intents/internal/type/hash_of.rbs +48 -0
  108. data/sig/checkout_intents/internal/type/request_parameters.rbs +20 -0
  109. data/sig/checkout_intents/internal/type/union.rbs +52 -0
  110. data/sig/checkout_intents/internal/type/unknown.rbs +26 -0
  111. data/sig/checkout_intents/internal/util.rbs +185 -0
  112. data/sig/checkout_intents/internal.rbs +10 -0
  113. data/sig/checkout_intents/models/base_checkout_intent.rbs +88 -0
  114. data/sig/checkout_intents/models/betas/checkout_session_create_params.rbs +172 -0
  115. data/sig/checkout_intents/models/brand_retrieve_params.rbs +15 -0
  116. data/sig/checkout_intents/models/brand_retrieve_response.rbs +43 -0
  117. data/sig/checkout_intents/models/buyer.rbs +67 -0
  118. data/sig/checkout_intents/models/checkout_intent.rbs +324 -0
  119. data/sig/checkout_intents/models/checkout_intent_add_payment_params.rbs +24 -0
  120. data/sig/checkout_intents/models/checkout_intent_confirm_params.rbs +24 -0
  121. data/sig/checkout_intents/models/checkout_intent_create_params.rbs +84 -0
  122. data/sig/checkout_intents/models/checkout_intent_list_params.rbs +77 -0
  123. data/sig/checkout_intents/models/checkout_intent_purchase_params.rbs +89 -0
  124. data/sig/checkout_intents/models/checkout_intent_retrieve_params.rbs +15 -0
  125. data/sig/checkout_intents/models/checkout_session.rbs +13 -0
  126. data/sig/checkout_intents/models/money.rbs +15 -0
  127. data/sig/checkout_intents/models/offer.rbs +135 -0
  128. data/sig/checkout_intents/models/payment_method.rbs +127 -0
  129. data/sig/checkout_intents/models/variant_selection.rbs +30 -0
  130. data/sig/checkout_intents/models.rbs +33 -0
  131. data/sig/checkout_intents/request_options.rbs +36 -0
  132. data/sig/checkout_intents/resources/betas/checkout_sessions.rbs +19 -0
  133. data/sig/checkout_intents/resources/betas.rbs +9 -0
  134. data/sig/checkout_intents/resources/brands.rbs +12 -0
  135. data/sig/checkout_intents/resources/checkout_intents.rbs +54 -0
  136. data/sig/checkout_intents/version.rbs +3 -0
  137. metadata +194 -0
@@ -0,0 +1,225 @@
1
+ # typed: strong
2
+
3
+ module CheckoutIntents
4
+ module Models
5
+ class Offer < CheckoutIntents::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(CheckoutIntents::Offer, CheckoutIntents::Internal::AnyHash)
9
+ end
10
+
11
+ sig { returns(CheckoutIntents::Offer::Cost) }
12
+ attr_reader :cost
13
+
14
+ sig { params(cost: CheckoutIntents::Offer::Cost::OrHash).void }
15
+ attr_writer :cost
16
+
17
+ sig { returns(CheckoutIntents::Offer::Shipping) }
18
+ attr_reader :shipping
19
+
20
+ sig { params(shipping: CheckoutIntents::Offer::Shipping::OrHash).void }
21
+ attr_writer :shipping
22
+
23
+ sig { returns(T.nilable(T::Array[String])) }
24
+ attr_reader :applied_promo_codes
25
+
26
+ sig { params(applied_promo_codes: T::Array[String]).void }
27
+ attr_writer :applied_promo_codes
28
+
29
+ sig do
30
+ params(
31
+ cost: CheckoutIntents::Offer::Cost::OrHash,
32
+ shipping: CheckoutIntents::Offer::Shipping::OrHash,
33
+ applied_promo_codes: T::Array[String]
34
+ ).returns(T.attached_class)
35
+ end
36
+ def self.new(cost:, shipping:, applied_promo_codes: nil)
37
+ end
38
+
39
+ sig do
40
+ override.returns(
41
+ {
42
+ cost: CheckoutIntents::Offer::Cost,
43
+ shipping: CheckoutIntents::Offer::Shipping,
44
+ applied_promo_codes: T::Array[String]
45
+ }
46
+ )
47
+ end
48
+ def to_hash
49
+ end
50
+
51
+ class Cost < CheckoutIntents::Internal::Type::BaseModel
52
+ OrHash =
53
+ T.type_alias do
54
+ T.any(
55
+ CheckoutIntents::Offer::Cost,
56
+ CheckoutIntents::Internal::AnyHash
57
+ )
58
+ end
59
+
60
+ sig { returns(CheckoutIntents::Money) }
61
+ attr_reader :subtotal
62
+
63
+ sig { params(subtotal: CheckoutIntents::Money::OrHash).void }
64
+ attr_writer :subtotal
65
+
66
+ sig { returns(CheckoutIntents::Money) }
67
+ attr_reader :total
68
+
69
+ sig { params(total: CheckoutIntents::Money::OrHash).void }
70
+ attr_writer :total
71
+
72
+ sig { returns(T.nilable(CheckoutIntents::Money)) }
73
+ attr_reader :discount
74
+
75
+ sig { params(discount: CheckoutIntents::Money::OrHash).void }
76
+ attr_writer :discount
77
+
78
+ sig { returns(T.nilable(CheckoutIntents::Money)) }
79
+ attr_reader :shipping
80
+
81
+ sig { params(shipping: CheckoutIntents::Money::OrHash).void }
82
+ attr_writer :shipping
83
+
84
+ sig { returns(T.nilable(CheckoutIntents::Money)) }
85
+ attr_reader :surcharge
86
+
87
+ sig { params(surcharge: CheckoutIntents::Money::OrHash).void }
88
+ attr_writer :surcharge
89
+
90
+ sig { returns(T.nilable(CheckoutIntents::Money)) }
91
+ attr_reader :tax
92
+
93
+ sig { params(tax: CheckoutIntents::Money::OrHash).void }
94
+ attr_writer :tax
95
+
96
+ sig do
97
+ params(
98
+ subtotal: CheckoutIntents::Money::OrHash,
99
+ total: CheckoutIntents::Money::OrHash,
100
+ discount: CheckoutIntents::Money::OrHash,
101
+ shipping: CheckoutIntents::Money::OrHash,
102
+ surcharge: CheckoutIntents::Money::OrHash,
103
+ tax: CheckoutIntents::Money::OrHash
104
+ ).returns(T.attached_class)
105
+ end
106
+ def self.new(
107
+ subtotal:,
108
+ total:,
109
+ discount: nil,
110
+ shipping: nil,
111
+ surcharge: nil,
112
+ tax: nil
113
+ )
114
+ end
115
+
116
+ sig do
117
+ override.returns(
118
+ {
119
+ subtotal: CheckoutIntents::Money,
120
+ total: CheckoutIntents::Money,
121
+ discount: CheckoutIntents::Money,
122
+ shipping: CheckoutIntents::Money,
123
+ surcharge: CheckoutIntents::Money,
124
+ tax: CheckoutIntents::Money
125
+ }
126
+ )
127
+ end
128
+ def to_hash
129
+ end
130
+ end
131
+
132
+ class Shipping < CheckoutIntents::Internal::Type::BaseModel
133
+ OrHash =
134
+ T.type_alias do
135
+ T.any(
136
+ CheckoutIntents::Offer::Shipping,
137
+ CheckoutIntents::Internal::AnyHash
138
+ )
139
+ end
140
+
141
+ sig do
142
+ returns(T::Array[CheckoutIntents::Offer::Shipping::AvailableOption])
143
+ end
144
+ attr_accessor :available_options
145
+
146
+ sig { returns(T.nilable(String)) }
147
+ attr_reader :selected_option_id
148
+
149
+ sig { params(selected_option_id: String).void }
150
+ attr_writer :selected_option_id
151
+
152
+ sig do
153
+ params(
154
+ available_options:
155
+ T::Array[
156
+ CheckoutIntents::Offer::Shipping::AvailableOption::OrHash
157
+ ],
158
+ selected_option_id: String
159
+ ).returns(T.attached_class)
160
+ end
161
+ def self.new(available_options:, selected_option_id: nil)
162
+ end
163
+
164
+ sig do
165
+ override.returns(
166
+ {
167
+ available_options:
168
+ T::Array[CheckoutIntents::Offer::Shipping::AvailableOption],
169
+ selected_option_id: String
170
+ }
171
+ )
172
+ end
173
+ def to_hash
174
+ end
175
+
176
+ class AvailableOption < CheckoutIntents::Internal::Type::BaseModel
177
+ OrHash =
178
+ T.type_alias do
179
+ T.any(
180
+ CheckoutIntents::Offer::Shipping::AvailableOption,
181
+ CheckoutIntents::Internal::AnyHash
182
+ )
183
+ end
184
+
185
+ sig { returns(String) }
186
+ attr_accessor :id
187
+
188
+ sig { returns(CheckoutIntents::Money) }
189
+ attr_reader :cost
190
+
191
+ sig { params(cost: CheckoutIntents::Money::OrHash).void }
192
+ attr_writer :cost
193
+
194
+ sig { returns(T.nilable(CheckoutIntents::Money)) }
195
+ attr_reader :discount
196
+
197
+ sig { params(discount: CheckoutIntents::Money::OrHash).void }
198
+ attr_writer :discount
199
+
200
+ sig do
201
+ params(
202
+ id: String,
203
+ cost: CheckoutIntents::Money::OrHash,
204
+ discount: CheckoutIntents::Money::OrHash
205
+ ).returns(T.attached_class)
206
+ end
207
+ def self.new(id:, cost:, discount: nil)
208
+ end
209
+
210
+ sig do
211
+ override.returns(
212
+ {
213
+ id: String,
214
+ cost: CheckoutIntents::Money,
215
+ discount: CheckoutIntents::Money
216
+ }
217
+ )
218
+ end
219
+ def to_hash
220
+ end
221
+ end
222
+ end
223
+ end
224
+ end
225
+ end
@@ -0,0 +1,292 @@
1
+ # typed: strong
2
+
3
+ module CheckoutIntents
4
+ module Models
5
+ module PaymentMethod
6
+ extend CheckoutIntents::Internal::Type::Union
7
+
8
+ Variants =
9
+ T.type_alias do
10
+ T.any(
11
+ CheckoutIntents::PaymentMethod::StripeTokenPaymentMethod,
12
+ CheckoutIntents::PaymentMethod::BasisTheoryPaymentMethod,
13
+ CheckoutIntents::PaymentMethod::NekudaPaymentMethod
14
+ )
15
+ end
16
+
17
+ class StripeTokenPaymentMethod < CheckoutIntents::Internal::Type::BaseModel
18
+ OrHash =
19
+ T.type_alias do
20
+ T.any(
21
+ CheckoutIntents::PaymentMethod::StripeTokenPaymentMethod,
22
+ CheckoutIntents::Internal::AnyHash
23
+ )
24
+ end
25
+
26
+ sig { returns(String) }
27
+ attr_accessor :stripe_token
28
+
29
+ sig do
30
+ returns(
31
+ CheckoutIntents::PaymentMethod::StripeTokenPaymentMethod::Type::OrSymbol
32
+ )
33
+ end
34
+ attr_accessor :type
35
+
36
+ sig do
37
+ params(
38
+ stripe_token: String,
39
+ type:
40
+ CheckoutIntents::PaymentMethod::StripeTokenPaymentMethod::Type::OrSymbol
41
+ ).returns(T.attached_class)
42
+ end
43
+ def self.new(stripe_token:, type:)
44
+ end
45
+
46
+ sig do
47
+ override.returns(
48
+ {
49
+ stripe_token: String,
50
+ type:
51
+ CheckoutIntents::PaymentMethod::StripeTokenPaymentMethod::Type::OrSymbol
52
+ }
53
+ )
54
+ end
55
+ def to_hash
56
+ end
57
+
58
+ module Type
59
+ extend CheckoutIntents::Internal::Type::Enum
60
+
61
+ TaggedSymbol =
62
+ T.type_alias do
63
+ T.all(
64
+ Symbol,
65
+ CheckoutIntents::PaymentMethod::StripeTokenPaymentMethod::Type
66
+ )
67
+ end
68
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
69
+
70
+ STRIPE_TOKEN =
71
+ T.let(
72
+ :stripe_token,
73
+ CheckoutIntents::PaymentMethod::StripeTokenPaymentMethod::Type::TaggedSymbol
74
+ )
75
+
76
+ sig do
77
+ override.returns(
78
+ T::Array[
79
+ CheckoutIntents::PaymentMethod::StripeTokenPaymentMethod::Type::TaggedSymbol
80
+ ]
81
+ )
82
+ end
83
+ def self.values
84
+ end
85
+ end
86
+ end
87
+
88
+ class BasisTheoryPaymentMethod < CheckoutIntents::Internal::Type::BaseModel
89
+ OrHash =
90
+ T.type_alias do
91
+ T.any(
92
+ CheckoutIntents::PaymentMethod::BasisTheoryPaymentMethod,
93
+ CheckoutIntents::Internal::AnyHash
94
+ )
95
+ end
96
+
97
+ sig { returns(String) }
98
+ attr_accessor :basis_theory_token
99
+
100
+ sig do
101
+ returns(
102
+ CheckoutIntents::PaymentMethod::BasisTheoryPaymentMethod::Type::OrSymbol
103
+ )
104
+ end
105
+ attr_accessor :type
106
+
107
+ sig do
108
+ params(
109
+ basis_theory_token: String,
110
+ type:
111
+ CheckoutIntents::PaymentMethod::BasisTheoryPaymentMethod::Type::OrSymbol
112
+ ).returns(T.attached_class)
113
+ end
114
+ def self.new(basis_theory_token:, type:)
115
+ end
116
+
117
+ sig do
118
+ override.returns(
119
+ {
120
+ basis_theory_token: String,
121
+ type:
122
+ CheckoutIntents::PaymentMethod::BasisTheoryPaymentMethod::Type::OrSymbol
123
+ }
124
+ )
125
+ end
126
+ def to_hash
127
+ end
128
+
129
+ module Type
130
+ extend CheckoutIntents::Internal::Type::Enum
131
+
132
+ TaggedSymbol =
133
+ T.type_alias do
134
+ T.all(
135
+ Symbol,
136
+ CheckoutIntents::PaymentMethod::BasisTheoryPaymentMethod::Type
137
+ )
138
+ end
139
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
140
+
141
+ BASIS_THEORY_TOKEN =
142
+ T.let(
143
+ :basis_theory_token,
144
+ CheckoutIntents::PaymentMethod::BasisTheoryPaymentMethod::Type::TaggedSymbol
145
+ )
146
+
147
+ sig do
148
+ override.returns(
149
+ T::Array[
150
+ CheckoutIntents::PaymentMethod::BasisTheoryPaymentMethod::Type::TaggedSymbol
151
+ ]
152
+ )
153
+ end
154
+ def self.values
155
+ end
156
+ end
157
+ end
158
+
159
+ class NekudaPaymentMethod < CheckoutIntents::Internal::Type::BaseModel
160
+ OrHash =
161
+ T.type_alias do
162
+ T.any(
163
+ CheckoutIntents::PaymentMethod::NekudaPaymentMethod,
164
+ CheckoutIntents::Internal::AnyHash
165
+ )
166
+ end
167
+
168
+ sig { returns(String) }
169
+ attr_accessor :nekuda_user_id
170
+
171
+ sig do
172
+ returns(
173
+ CheckoutIntents::PaymentMethod::NekudaPaymentMethod::Type::OrSymbol
174
+ )
175
+ end
176
+ attr_accessor :type
177
+
178
+ # Construct a type with a set of properties K of type T
179
+ sig do
180
+ returns(
181
+ T.nilable(
182
+ T::Hash[
183
+ Symbol,
184
+ CheckoutIntents::PaymentMethod::NekudaPaymentMethod::NekudaMandateData::Variants
185
+ ]
186
+ )
187
+ )
188
+ end
189
+ attr_reader :nekuda_mandate_data
190
+
191
+ sig do
192
+ params(
193
+ nekuda_mandate_data:
194
+ T::Hash[
195
+ Symbol,
196
+ CheckoutIntents::PaymentMethod::NekudaPaymentMethod::NekudaMandateData::Variants
197
+ ]
198
+ ).void
199
+ end
200
+ attr_writer :nekuda_mandate_data
201
+
202
+ sig do
203
+ params(
204
+ nekuda_user_id: String,
205
+ type:
206
+ CheckoutIntents::PaymentMethod::NekudaPaymentMethod::Type::OrSymbol,
207
+ nekuda_mandate_data:
208
+ T::Hash[
209
+ Symbol,
210
+ CheckoutIntents::PaymentMethod::NekudaPaymentMethod::NekudaMandateData::Variants
211
+ ]
212
+ ).returns(T.attached_class)
213
+ end
214
+ def self.new(
215
+ nekuda_user_id:,
216
+ type:,
217
+ # Construct a type with a set of properties K of type T
218
+ nekuda_mandate_data: nil
219
+ )
220
+ end
221
+
222
+ sig do
223
+ override.returns(
224
+ {
225
+ nekuda_user_id: String,
226
+ type:
227
+ CheckoutIntents::PaymentMethod::NekudaPaymentMethod::Type::OrSymbol,
228
+ nekuda_mandate_data:
229
+ T::Hash[
230
+ Symbol,
231
+ CheckoutIntents::PaymentMethod::NekudaPaymentMethod::NekudaMandateData::Variants
232
+ ]
233
+ }
234
+ )
235
+ end
236
+ def to_hash
237
+ end
238
+
239
+ module Type
240
+ extend CheckoutIntents::Internal::Type::Enum
241
+
242
+ TaggedSymbol =
243
+ T.type_alias do
244
+ T.all(
245
+ Symbol,
246
+ CheckoutIntents::PaymentMethod::NekudaPaymentMethod::Type
247
+ )
248
+ end
249
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
250
+
251
+ NEKUDA_TOKEN =
252
+ T.let(
253
+ :nekuda_token,
254
+ CheckoutIntents::PaymentMethod::NekudaPaymentMethod::Type::TaggedSymbol
255
+ )
256
+
257
+ sig do
258
+ override.returns(
259
+ T::Array[
260
+ CheckoutIntents::PaymentMethod::NekudaPaymentMethod::Type::TaggedSymbol
261
+ ]
262
+ )
263
+ end
264
+ def self.values
265
+ end
266
+ end
267
+
268
+ module NekudaMandateData
269
+ extend CheckoutIntents::Internal::Type::Union
270
+
271
+ Variants = T.type_alias { T.any(String, Float) }
272
+
273
+ sig do
274
+ override.returns(
275
+ T::Array[
276
+ CheckoutIntents::PaymentMethod::NekudaPaymentMethod::NekudaMandateData::Variants
277
+ ]
278
+ )
279
+ end
280
+ def self.variants
281
+ end
282
+ end
283
+ end
284
+
285
+ sig do
286
+ override.returns(T::Array[CheckoutIntents::PaymentMethod::Variants])
287
+ end
288
+ def self.variants
289
+ end
290
+ end
291
+ end
292
+ end
@@ -0,0 +1,55 @@
1
+ # typed: strong
2
+
3
+ module CheckoutIntents
4
+ module Models
5
+ class VariantSelection < CheckoutIntents::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(
9
+ CheckoutIntents::VariantSelection,
10
+ CheckoutIntents::Internal::AnyHash
11
+ )
12
+ end
13
+
14
+ sig { returns(String) }
15
+ attr_accessor :label
16
+
17
+ sig { returns(CheckoutIntents::VariantSelection::Value::Variants) }
18
+ attr_accessor :value
19
+
20
+ sig do
21
+ params(
22
+ label: String,
23
+ value: CheckoutIntents::VariantSelection::Value::Variants
24
+ ).returns(T.attached_class)
25
+ end
26
+ def self.new(label:, value:)
27
+ end
28
+
29
+ sig do
30
+ override.returns(
31
+ {
32
+ label: String,
33
+ value: CheckoutIntents::VariantSelection::Value::Variants
34
+ }
35
+ )
36
+ end
37
+ def to_hash
38
+ end
39
+
40
+ module Value
41
+ extend CheckoutIntents::Internal::Type::Union
42
+
43
+ Variants = T.type_alias { T.any(String, Float) }
44
+
45
+ sig do
46
+ override.returns(
47
+ T::Array[CheckoutIntents::VariantSelection::Value::Variants]
48
+ )
49
+ end
50
+ def self.variants
51
+ end
52
+ end
53
+ end
54
+ end
55
+ end
@@ -0,0 +1,40 @@
1
+ # typed: strong
2
+
3
+ module CheckoutIntents
4
+ BaseCheckoutIntent = CheckoutIntents::Models::BaseCheckoutIntent
5
+
6
+ Betas = CheckoutIntents::Models::Betas
7
+
8
+ BrandRetrieveParams = CheckoutIntents::Models::BrandRetrieveParams
9
+
10
+ Buyer = CheckoutIntents::Models::Buyer
11
+
12
+ CheckoutIntent = CheckoutIntents::Models::CheckoutIntent
13
+
14
+ CheckoutIntentAddPaymentParams =
15
+ CheckoutIntents::Models::CheckoutIntentAddPaymentParams
16
+
17
+ CheckoutIntentConfirmParams =
18
+ CheckoutIntents::Models::CheckoutIntentConfirmParams
19
+
20
+ CheckoutIntentCreateParams =
21
+ CheckoutIntents::Models::CheckoutIntentCreateParams
22
+
23
+ CheckoutIntentListParams = CheckoutIntents::Models::CheckoutIntentListParams
24
+
25
+ CheckoutIntentPurchaseParams =
26
+ CheckoutIntents::Models::CheckoutIntentPurchaseParams
27
+
28
+ CheckoutIntentRetrieveParams =
29
+ CheckoutIntents::Models::CheckoutIntentRetrieveParams
30
+
31
+ CheckoutSession = CheckoutIntents::Models::CheckoutSession
32
+
33
+ Money = CheckoutIntents::Models::Money
34
+
35
+ Offer = CheckoutIntents::Models::Offer
36
+
37
+ PaymentMethod = CheckoutIntents::Models::PaymentMethod
38
+
39
+ VariantSelection = CheckoutIntents::Models::VariantSelection
40
+ end
@@ -0,0 +1,64 @@
1
+ # typed: strong
2
+
3
+ module CheckoutIntents
4
+ # Specify HTTP behaviour to use for a specific request. These options supplement
5
+ # or override those provided at the client level.
6
+ #
7
+ # When making a request, you can pass an actual {RequestOptions} instance, or
8
+ # simply pass a Hash with symbol keys matching the attributes on this class.
9
+ class RequestOptions < CheckoutIntents::Internal::Type::BaseModel
10
+ OrHash =
11
+ T.type_alias do
12
+ T.any(
13
+ CheckoutIntents::RequestOptions,
14
+ CheckoutIntents::Internal::AnyHash
15
+ )
16
+ end
17
+
18
+ # @api private
19
+ sig { params(opts: CheckoutIntents::RequestOptions::OrHash).void }
20
+ def self.validate!(opts)
21
+ end
22
+
23
+ # Idempotency key to send with request and all associated retries. Will only be
24
+ # sent for write requests.
25
+ sig { returns(T.nilable(String)) }
26
+ attr_accessor :idempotency_key
27
+
28
+ # Extra query params to send with the request. These are `.merge`’d into any
29
+ # `query` given at the client level.
30
+ sig do
31
+ returns(
32
+ T.nilable(T::Hash[String, T.nilable(T.any(T::Array[String], String))])
33
+ )
34
+ end
35
+ attr_accessor :extra_query
36
+
37
+ # Extra headers to send with the request. These are `.merged`’d into any
38
+ # `extra_headers` given at the client level.
39
+ sig { returns(T.nilable(T::Hash[String, T.nilable(String)])) }
40
+ attr_accessor :extra_headers
41
+
42
+ # Extra data to send with the request. These are deep merged into any data
43
+ # generated as part of the normal request.
44
+ sig { returns(T.nilable(T.anything)) }
45
+ attr_accessor :extra_body
46
+
47
+ # Maximum number of retries to attempt after a failed initial request.
48
+ sig { returns(T.nilable(Integer)) }
49
+ attr_accessor :max_retries
50
+
51
+ # Request timeout in seconds.
52
+ sig { returns(T.nilable(Float)) }
53
+ attr_accessor :timeout
54
+
55
+ # Returns a new instance of RequestOptions.
56
+ sig do
57
+ params(values: CheckoutIntents::Internal::AnyHash).returns(
58
+ T.attached_class
59
+ )
60
+ end
61
+ def self.new(values = {})
62
+ end
63
+ end
64
+ end