metronome-sdk 1.0.0 → 2.0.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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +55 -0
- data/README.md +1 -1
- data/lib/metronome_sdk/errors.rb +25 -11
- data/lib/metronome_sdk/file_part.rb +10 -7
- data/lib/metronome_sdk/internal/body_cursor_page.rb +1 -1
- data/lib/metronome_sdk/internal/cursor_page.rb +1 -1
- data/lib/metronome_sdk/internal/cursor_page_without_limit.rb +1 -1
- data/lib/metronome_sdk/internal/transport/base_client.rb +11 -7
- data/lib/metronome_sdk/internal/transport/pooled_net_requester.rb +7 -10
- data/lib/metronome_sdk/internal/type/base_page.rb +1 -1
- data/lib/metronome_sdk/internal/type/enum.rb +25 -0
- data/lib/metronome_sdk/internal/type/file_input.rb +7 -4
- data/lib/metronome_sdk/internal/util.rb +8 -7
- data/lib/metronome_sdk/models/contract_v2.rb +256 -6
- data/lib/metronome_sdk/models/contract_without_amendments.rb +2 -2
- data/lib/metronome_sdk/models/hierarchy_configuration.rb +99 -2
- data/lib/metronome_sdk/models/payment_gate_config.rb +1 -0
- data/lib/metronome_sdk/models/payment_gate_config_v2.rb +1 -0
- data/lib/metronome_sdk/models/subscription.rb +85 -1
- data/lib/metronome_sdk/models/v1/alert_archive_params.rb +8 -4
- data/lib/metronome_sdk/models/v1/alert_create_params.rb +38 -36
- data/lib/metronome_sdk/models/v1/contract_amend_params.rb +1 -0
- data/lib/metronome_sdk/models/v1/contract_create_params.rb +101 -3
- data/lib/metronome_sdk/models/v1/customer_detail.rb +9 -1
- data/lib/metronome_sdk/models/v1/customer_preview_events_params.rb +5 -15
- data/lib/metronome_sdk/models/v1/customer_preview_events_response.rb +3 -3
- data/lib/metronome_sdk/models/v1/customers/alert_list_params.rb +3 -3
- data/lib/metronome_sdk/models/v1/customers/alert_reset_params.rb +2 -2
- data/lib/metronome_sdk/models/v1/customers/alert_retrieve_params.rb +12 -12
- data/lib/metronome_sdk/models/v1/customers/customer_alert.rb +40 -38
- data/lib/metronome_sdk/models/v1/customers/invoice.rb +136 -18
- data/lib/metronome_sdk/models/v1/customers/invoice_retrieve_pdf_params.rb +30 -0
- data/lib/metronome_sdk/models/v1/payment.rb +151 -0
- data/lib/metronome_sdk/models/v1/payment_attempt_params.rb +28 -0
- data/lib/metronome_sdk/models/v1/payment_attempt_response.rb +18 -0
- data/lib/metronome_sdk/models/v1/payment_cancel_params.rb +28 -0
- data/lib/metronome_sdk/models/v1/payment_cancel_response.rb +18 -0
- data/lib/metronome_sdk/models/v1/payment_list_params.rb +53 -0
- data/lib/metronome_sdk/models/v1/payment_status.rb +19 -0
- data/lib/metronome_sdk/models/v2/contract_edit_commit_params.rb +9 -1
- data/lib/metronome_sdk/models/v2/contract_edit_credit_params.rb +9 -1
- data/lib/metronome_sdk/models/v2/contract_edit_params.rb +186 -3
- data/lib/metronome_sdk/models/v2/contract_get_edit_history_response.rb +195 -8
- data/lib/metronome_sdk/resources/v1/alerts.rb +57 -53
- data/lib/metronome_sdk/resources/v1/contracts.rb +4 -3
- data/lib/metronome_sdk/resources/v1/customers/alerts.rb +70 -51
- data/lib/metronome_sdk/resources/v1/customers/invoices.rb +55 -0
- data/lib/metronome_sdk/resources/v1/customers.rb +7 -4
- data/lib/metronome_sdk/resources/v1/payments.rb +102 -0
- data/lib/metronome_sdk/resources/v1/usage.rb +4 -2
- data/lib/metronome_sdk/resources/v1.rb +4 -0
- data/lib/metronome_sdk/resources/v2/contracts.rb +9 -3
- data/lib/metronome_sdk/version.rb +1 -1
- data/lib/metronome_sdk.rb +9 -0
- data/rbi/metronome_sdk/errors.rbi +29 -2
- data/rbi/metronome_sdk/file_part.rbi +1 -1
- data/rbi/metronome_sdk/internal/transport/base_client.rbi +4 -5
- data/rbi/metronome_sdk/internal/type/base_page.rbi +1 -1
- data/rbi/metronome_sdk/internal/util.rbi +1 -1
- data/rbi/metronome_sdk/models/contract_v2.rbi +603 -10
- data/rbi/metronome_sdk/models/contract_without_amendments.rbi +2 -2
- data/rbi/metronome_sdk/models/hierarchy_configuration.rbi +250 -6
- data/rbi/metronome_sdk/models/payment_gate_config.rbi +5 -0
- data/rbi/metronome_sdk/models/payment_gate_config_v2.rbi +5 -0
- data/rbi/metronome_sdk/models/subscription.rbi +175 -0
- data/rbi/metronome_sdk/models/v1/alert_archive_params.rbi +6 -4
- data/rbi/metronome_sdk/models/v1/alert_create_params.rbi +51 -47
- data/rbi/metronome_sdk/models/v1/contract_amend_params.rbi +5 -0
- data/rbi/metronome_sdk/models/v1/contract_create_params.rbi +257 -4
- data/rbi/metronome_sdk/models/v1/customer_detail.rbi +8 -0
- data/rbi/metronome_sdk/models/v1/customer_preview_events_params.rbi +6 -21
- data/rbi/metronome_sdk/models/v1/customer_preview_events_response.rbi +10 -9
- data/rbi/metronome_sdk/models/v1/customers/alert_list_params.rbi +4 -4
- data/rbi/metronome_sdk/models/v1/customers/alert_reset_params.rbi +2 -2
- data/rbi/metronome_sdk/models/v1/customers/alert_retrieve_params.rbi +14 -14
- data/rbi/metronome_sdk/models/v1/customers/customer_alert.rbi +48 -44
- data/rbi/metronome_sdk/models/v1/customers/invoice.rbi +246 -58
- data/rbi/metronome_sdk/models/v1/customers/invoice_retrieve_pdf_params.rbi +50 -0
- data/rbi/metronome_sdk/models/v1/payment.rbi +316 -0
- data/rbi/metronome_sdk/models/v1/payment_attempt_params.rbi +48 -0
- data/rbi/metronome_sdk/models/v1/payment_attempt_response.rbi +35 -0
- data/rbi/metronome_sdk/models/v1/payment_cancel_params.rbi +48 -0
- data/rbi/metronome_sdk/models/v1/payment_cancel_response.rbi +35 -0
- data/rbi/metronome_sdk/models/v1/payment_list_params.rbi +91 -0
- data/rbi/metronome_sdk/models/v1/payment_status.rbi +33 -0
- data/rbi/metronome_sdk/models/v2/contract_edit_commit_params.rbi +18 -0
- data/rbi/metronome_sdk/models/v2/contract_edit_credit_params.rbi +18 -0
- data/rbi/metronome_sdk/models/v2/contract_edit_params.rbi +498 -6
- data/rbi/metronome_sdk/models/v2/contract_get_edit_history_response.rbi +462 -14
- data/rbi/metronome_sdk/resources/v1/alerts.rbi +68 -64
- data/rbi/metronome_sdk/resources/v1/contracts.rbi +4 -3
- data/rbi/metronome_sdk/resources/v1/customers/alerts.rbi +73 -54
- data/rbi/metronome_sdk/resources/v1/customers/invoices.rbi +36 -0
- data/rbi/metronome_sdk/resources/v1/customers.rbi +7 -4
- data/rbi/metronome_sdk/resources/v1/payments.rbi +72 -0
- data/rbi/metronome_sdk/resources/v1/usage.rbi +4 -2
- data/rbi/metronome_sdk/resources/v1.rbi +3 -0
- data/rbi/metronome_sdk/resources/v2/contracts.rbi +14 -0
- data/sig/metronome_sdk/errors.rbs +7 -0
- data/sig/metronome_sdk/file_part.rbs +1 -1
- data/sig/metronome_sdk/models/contract_v2.rbs +239 -12
- data/sig/metronome_sdk/models/hierarchy_configuration.rbs +87 -6
- data/sig/metronome_sdk/models/payment_gate_config.rbs +2 -1
- data/sig/metronome_sdk/models/payment_gate_config_v2.rbs +2 -1
- data/sig/metronome_sdk/models/subscription.rbs +80 -0
- data/sig/metronome_sdk/models/v1/contract_amend_params.rbs +2 -1
- data/sig/metronome_sdk/models/v1/contract_create_params.rbs +91 -5
- data/sig/metronome_sdk/models/v1/customer_detail.rbs +5 -0
- data/sig/metronome_sdk/models/v1/customer_preview_events_params.rbs +0 -7
- data/sig/metronome_sdk/models/v1/customer_preview_events_response.rbs +6 -4
- data/sig/metronome_sdk/models/v1/customers/invoice.rbs +137 -24
- data/sig/metronome_sdk/models/v1/customers/invoice_retrieve_pdf_params.rbs +32 -0
- data/sig/metronome_sdk/models/v1/payment.rbs +191 -0
- data/sig/metronome_sdk/models/v1/payment_attempt_params.rbs +30 -0
- data/sig/metronome_sdk/models/v1/payment_attempt_response.rbs +15 -0
- data/sig/metronome_sdk/models/v1/payment_cancel_params.rbs +30 -0
- data/sig/metronome_sdk/models/v1/payment_cancel_response.rbs +15 -0
- data/sig/metronome_sdk/models/v1/payment_list_params.rbs +56 -0
- data/sig/metronome_sdk/models/v1/payment_status.rbs +19 -0
- data/sig/metronome_sdk/models/v2/contract_edit_commit_params.rbs +9 -0
- data/sig/metronome_sdk/models/v2/contract_edit_credit_params.rbs +9 -0
- data/sig/metronome_sdk/models/v2/contract_edit_params.rbs +182 -7
- data/sig/metronome_sdk/models/v2/contract_get_edit_history_response.rbs +221 -18
- data/sig/metronome_sdk/resources/v1/customers/invoices.rbs +6 -0
- data/sig/metronome_sdk/resources/v1/payments.rbs +30 -0
- data/sig/metronome_sdk/resources/v1.rbs +2 -0
- data/sig/metronome_sdk/resources/v2/contracts.rbs +3 -0
- metadata +29 -2
|
@@ -34,17 +34,37 @@ module MetronomeSDK
|
|
|
34
34
|
end
|
|
35
35
|
attr_accessor :children
|
|
36
36
|
|
|
37
|
+
sig do
|
|
38
|
+
returns(
|
|
39
|
+
T.nilable(
|
|
40
|
+
MetronomeSDK::HierarchyConfiguration::ParentHierarchyConfiguration::ParentBehavior
|
|
41
|
+
)
|
|
42
|
+
)
|
|
43
|
+
end
|
|
44
|
+
attr_reader :parent_behavior
|
|
45
|
+
|
|
46
|
+
sig do
|
|
47
|
+
params(
|
|
48
|
+
parent_behavior:
|
|
49
|
+
MetronomeSDK::HierarchyConfiguration::ParentHierarchyConfiguration::ParentBehavior::OrHash
|
|
50
|
+
).void
|
|
51
|
+
end
|
|
52
|
+
attr_writer :parent_behavior
|
|
53
|
+
|
|
37
54
|
sig do
|
|
38
55
|
params(
|
|
39
56
|
children:
|
|
40
57
|
T::Array[
|
|
41
58
|
MetronomeSDK::HierarchyConfiguration::ParentHierarchyConfiguration::Child::OrHash
|
|
42
|
-
]
|
|
59
|
+
],
|
|
60
|
+
parent_behavior:
|
|
61
|
+
MetronomeSDK::HierarchyConfiguration::ParentHierarchyConfiguration::ParentBehavior::OrHash
|
|
43
62
|
).returns(T.attached_class)
|
|
44
63
|
end
|
|
45
64
|
def self.new(
|
|
46
65
|
# List of contracts that belong to this parent.
|
|
47
|
-
children
|
|
66
|
+
children:,
|
|
67
|
+
parent_behavior: nil
|
|
48
68
|
)
|
|
49
69
|
end
|
|
50
70
|
|
|
@@ -54,7 +74,9 @@ module MetronomeSDK
|
|
|
54
74
|
children:
|
|
55
75
|
T::Array[
|
|
56
76
|
MetronomeSDK::HierarchyConfiguration::ParentHierarchyConfiguration::Child
|
|
57
|
-
]
|
|
77
|
+
],
|
|
78
|
+
parent_behavior:
|
|
79
|
+
MetronomeSDK::HierarchyConfiguration::ParentHierarchyConfiguration::ParentBehavior
|
|
58
80
|
}
|
|
59
81
|
)
|
|
60
82
|
end
|
|
@@ -88,6 +110,101 @@ module MetronomeSDK
|
|
|
88
110
|
def to_hash
|
|
89
111
|
end
|
|
90
112
|
end
|
|
113
|
+
|
|
114
|
+
class ParentBehavior < MetronomeSDK::Internal::Type::BaseModel
|
|
115
|
+
OrHash =
|
|
116
|
+
T.type_alias do
|
|
117
|
+
T.any(
|
|
118
|
+
MetronomeSDK::HierarchyConfiguration::ParentHierarchyConfiguration::ParentBehavior,
|
|
119
|
+
MetronomeSDK::Internal::AnyHash
|
|
120
|
+
)
|
|
121
|
+
end
|
|
122
|
+
|
|
123
|
+
# Indicates the desired behavior of consolidated invoices generated by the parent
|
|
124
|
+
# in a customer hierarchy **CONCATENATE**: Statements on the invoices of child
|
|
125
|
+
# customers will be appended to the consolidated invoice **NONE**: Do not generate
|
|
126
|
+
# consolidated invoices
|
|
127
|
+
sig do
|
|
128
|
+
returns(
|
|
129
|
+
T.nilable(
|
|
130
|
+
MetronomeSDK::HierarchyConfiguration::ParentHierarchyConfiguration::ParentBehavior::InvoiceConsolidationType::TaggedSymbol
|
|
131
|
+
)
|
|
132
|
+
)
|
|
133
|
+
end
|
|
134
|
+
attr_reader :invoice_consolidation_type
|
|
135
|
+
|
|
136
|
+
sig do
|
|
137
|
+
params(
|
|
138
|
+
invoice_consolidation_type:
|
|
139
|
+
MetronomeSDK::HierarchyConfiguration::ParentHierarchyConfiguration::ParentBehavior::InvoiceConsolidationType::OrSymbol
|
|
140
|
+
).void
|
|
141
|
+
end
|
|
142
|
+
attr_writer :invoice_consolidation_type
|
|
143
|
+
|
|
144
|
+
sig do
|
|
145
|
+
params(
|
|
146
|
+
invoice_consolidation_type:
|
|
147
|
+
MetronomeSDK::HierarchyConfiguration::ParentHierarchyConfiguration::ParentBehavior::InvoiceConsolidationType::OrSymbol
|
|
148
|
+
).returns(T.attached_class)
|
|
149
|
+
end
|
|
150
|
+
def self.new(
|
|
151
|
+
# Indicates the desired behavior of consolidated invoices generated by the parent
|
|
152
|
+
# in a customer hierarchy **CONCATENATE**: Statements on the invoices of child
|
|
153
|
+
# customers will be appended to the consolidated invoice **NONE**: Do not generate
|
|
154
|
+
# consolidated invoices
|
|
155
|
+
invoice_consolidation_type: nil
|
|
156
|
+
)
|
|
157
|
+
end
|
|
158
|
+
|
|
159
|
+
sig do
|
|
160
|
+
override.returns(
|
|
161
|
+
{
|
|
162
|
+
invoice_consolidation_type:
|
|
163
|
+
MetronomeSDK::HierarchyConfiguration::ParentHierarchyConfiguration::ParentBehavior::InvoiceConsolidationType::TaggedSymbol
|
|
164
|
+
}
|
|
165
|
+
)
|
|
166
|
+
end
|
|
167
|
+
def to_hash
|
|
168
|
+
end
|
|
169
|
+
|
|
170
|
+
# Indicates the desired behavior of consolidated invoices generated by the parent
|
|
171
|
+
# in a customer hierarchy **CONCATENATE**: Statements on the invoices of child
|
|
172
|
+
# customers will be appended to the consolidated invoice **NONE**: Do not generate
|
|
173
|
+
# consolidated invoices
|
|
174
|
+
module InvoiceConsolidationType
|
|
175
|
+
extend MetronomeSDK::Internal::Type::Enum
|
|
176
|
+
|
|
177
|
+
TaggedSymbol =
|
|
178
|
+
T.type_alias do
|
|
179
|
+
T.all(
|
|
180
|
+
Symbol,
|
|
181
|
+
MetronomeSDK::HierarchyConfiguration::ParentHierarchyConfiguration::ParentBehavior::InvoiceConsolidationType
|
|
182
|
+
)
|
|
183
|
+
end
|
|
184
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
185
|
+
|
|
186
|
+
CONCATENATE =
|
|
187
|
+
T.let(
|
|
188
|
+
:CONCATENATE,
|
|
189
|
+
MetronomeSDK::HierarchyConfiguration::ParentHierarchyConfiguration::ParentBehavior::InvoiceConsolidationType::TaggedSymbol
|
|
190
|
+
)
|
|
191
|
+
NONE =
|
|
192
|
+
T.let(
|
|
193
|
+
:NONE,
|
|
194
|
+
MetronomeSDK::HierarchyConfiguration::ParentHierarchyConfiguration::ParentBehavior::InvoiceConsolidationType::TaggedSymbol
|
|
195
|
+
)
|
|
196
|
+
|
|
197
|
+
sig do
|
|
198
|
+
override.returns(
|
|
199
|
+
T::Array[
|
|
200
|
+
MetronomeSDK::HierarchyConfiguration::ParentHierarchyConfiguration::ParentBehavior::InvoiceConsolidationType::TaggedSymbol
|
|
201
|
+
]
|
|
202
|
+
)
|
|
203
|
+
end
|
|
204
|
+
def self.values
|
|
205
|
+
end
|
|
206
|
+
end
|
|
207
|
+
end
|
|
91
208
|
end
|
|
92
209
|
|
|
93
210
|
class ChildHierarchyConfiguration < MetronomeSDK::Internal::Type::BaseModel
|
|
@@ -115,15 +232,65 @@ module MetronomeSDK
|
|
|
115
232
|
end
|
|
116
233
|
attr_writer :parent
|
|
117
234
|
|
|
235
|
+
# Indicates whether the parent should pay for the child's invoice charges
|
|
236
|
+
sig do
|
|
237
|
+
returns(
|
|
238
|
+
T.nilable(
|
|
239
|
+
MetronomeSDK::HierarchyConfiguration::ChildHierarchyConfiguration::Payer::TaggedSymbol
|
|
240
|
+
)
|
|
241
|
+
)
|
|
242
|
+
end
|
|
243
|
+
attr_reader :payer
|
|
244
|
+
|
|
245
|
+
sig do
|
|
246
|
+
params(
|
|
247
|
+
payer:
|
|
248
|
+
MetronomeSDK::HierarchyConfiguration::ChildHierarchyConfiguration::Payer::OrSymbol
|
|
249
|
+
).void
|
|
250
|
+
end
|
|
251
|
+
attr_writer :payer
|
|
252
|
+
|
|
253
|
+
# Indicates the behavior of the child's invoice statements on the parent's
|
|
254
|
+
# invoices **CONSOLIDATE**: Child's invoice statements will be added to parent's
|
|
255
|
+
# consolidated invoices **SEPARATE**: Child's invoice statements will appear not
|
|
256
|
+
# appear on parent's consolidated invoices
|
|
257
|
+
sig do
|
|
258
|
+
returns(
|
|
259
|
+
T.nilable(
|
|
260
|
+
MetronomeSDK::HierarchyConfiguration::ChildHierarchyConfiguration::UsageStatementBehavior::TaggedSymbol
|
|
261
|
+
)
|
|
262
|
+
)
|
|
263
|
+
end
|
|
264
|
+
attr_reader :usage_statement_behavior
|
|
265
|
+
|
|
266
|
+
sig do
|
|
267
|
+
params(
|
|
268
|
+
usage_statement_behavior:
|
|
269
|
+
MetronomeSDK::HierarchyConfiguration::ChildHierarchyConfiguration::UsageStatementBehavior::OrSymbol
|
|
270
|
+
).void
|
|
271
|
+
end
|
|
272
|
+
attr_writer :usage_statement_behavior
|
|
273
|
+
|
|
118
274
|
sig do
|
|
119
275
|
params(
|
|
120
276
|
parent:
|
|
121
|
-
MetronomeSDK::HierarchyConfiguration::ChildHierarchyConfiguration::Parent::OrHash
|
|
277
|
+
MetronomeSDK::HierarchyConfiguration::ChildHierarchyConfiguration::Parent::OrHash,
|
|
278
|
+
payer:
|
|
279
|
+
MetronomeSDK::HierarchyConfiguration::ChildHierarchyConfiguration::Payer::OrSymbol,
|
|
280
|
+
usage_statement_behavior:
|
|
281
|
+
MetronomeSDK::HierarchyConfiguration::ChildHierarchyConfiguration::UsageStatementBehavior::OrSymbol
|
|
122
282
|
).returns(T.attached_class)
|
|
123
283
|
end
|
|
124
284
|
def self.new(
|
|
125
285
|
# The single parent contract/customer for this child.
|
|
126
|
-
parent
|
|
286
|
+
parent:,
|
|
287
|
+
# Indicates whether the parent should pay for the child's invoice charges
|
|
288
|
+
payer: nil,
|
|
289
|
+
# Indicates the behavior of the child's invoice statements on the parent's
|
|
290
|
+
# invoices **CONSOLIDATE**: Child's invoice statements will be added to parent's
|
|
291
|
+
# consolidated invoices **SEPARATE**: Child's invoice statements will appear not
|
|
292
|
+
# appear on parent's consolidated invoices
|
|
293
|
+
usage_statement_behavior: nil
|
|
127
294
|
)
|
|
128
295
|
end
|
|
129
296
|
|
|
@@ -131,7 +298,11 @@ module MetronomeSDK
|
|
|
131
298
|
override.returns(
|
|
132
299
|
{
|
|
133
300
|
parent:
|
|
134
|
-
MetronomeSDK::HierarchyConfiguration::ChildHierarchyConfiguration::Parent
|
|
301
|
+
MetronomeSDK::HierarchyConfiguration::ChildHierarchyConfiguration::Parent,
|
|
302
|
+
payer:
|
|
303
|
+
MetronomeSDK::HierarchyConfiguration::ChildHierarchyConfiguration::Payer::TaggedSymbol,
|
|
304
|
+
usage_statement_behavior:
|
|
305
|
+
MetronomeSDK::HierarchyConfiguration::ChildHierarchyConfiguration::UsageStatementBehavior::TaggedSymbol
|
|
135
306
|
}
|
|
136
307
|
)
|
|
137
308
|
end
|
|
@@ -166,6 +337,79 @@ module MetronomeSDK
|
|
|
166
337
|
def to_hash
|
|
167
338
|
end
|
|
168
339
|
end
|
|
340
|
+
|
|
341
|
+
# Indicates whether the parent should pay for the child's invoice charges
|
|
342
|
+
module Payer
|
|
343
|
+
extend MetronomeSDK::Internal::Type::Enum
|
|
344
|
+
|
|
345
|
+
TaggedSymbol =
|
|
346
|
+
T.type_alias do
|
|
347
|
+
T.all(
|
|
348
|
+
Symbol,
|
|
349
|
+
MetronomeSDK::HierarchyConfiguration::ChildHierarchyConfiguration::Payer
|
|
350
|
+
)
|
|
351
|
+
end
|
|
352
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
353
|
+
|
|
354
|
+
SELF =
|
|
355
|
+
T.let(
|
|
356
|
+
:SELF,
|
|
357
|
+
MetronomeSDK::HierarchyConfiguration::ChildHierarchyConfiguration::Payer::TaggedSymbol
|
|
358
|
+
)
|
|
359
|
+
PARENT =
|
|
360
|
+
T.let(
|
|
361
|
+
:PARENT,
|
|
362
|
+
MetronomeSDK::HierarchyConfiguration::ChildHierarchyConfiguration::Payer::TaggedSymbol
|
|
363
|
+
)
|
|
364
|
+
|
|
365
|
+
sig do
|
|
366
|
+
override.returns(
|
|
367
|
+
T::Array[
|
|
368
|
+
MetronomeSDK::HierarchyConfiguration::ChildHierarchyConfiguration::Payer::TaggedSymbol
|
|
369
|
+
]
|
|
370
|
+
)
|
|
371
|
+
end
|
|
372
|
+
def self.values
|
|
373
|
+
end
|
|
374
|
+
end
|
|
375
|
+
|
|
376
|
+
# Indicates the behavior of the child's invoice statements on the parent's
|
|
377
|
+
# invoices **CONSOLIDATE**: Child's invoice statements will be added to parent's
|
|
378
|
+
# consolidated invoices **SEPARATE**: Child's invoice statements will appear not
|
|
379
|
+
# appear on parent's consolidated invoices
|
|
380
|
+
module UsageStatementBehavior
|
|
381
|
+
extend MetronomeSDK::Internal::Type::Enum
|
|
382
|
+
|
|
383
|
+
TaggedSymbol =
|
|
384
|
+
T.type_alias do
|
|
385
|
+
T.all(
|
|
386
|
+
Symbol,
|
|
387
|
+
MetronomeSDK::HierarchyConfiguration::ChildHierarchyConfiguration::UsageStatementBehavior
|
|
388
|
+
)
|
|
389
|
+
end
|
|
390
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
391
|
+
|
|
392
|
+
CONSOLIDATE =
|
|
393
|
+
T.let(
|
|
394
|
+
:CONSOLIDATE,
|
|
395
|
+
MetronomeSDK::HierarchyConfiguration::ChildHierarchyConfiguration::UsageStatementBehavior::TaggedSymbol
|
|
396
|
+
)
|
|
397
|
+
SEPARATE =
|
|
398
|
+
T.let(
|
|
399
|
+
:SEPARATE,
|
|
400
|
+
MetronomeSDK::HierarchyConfiguration::ChildHierarchyConfiguration::UsageStatementBehavior::TaggedSymbol
|
|
401
|
+
)
|
|
402
|
+
|
|
403
|
+
sig do
|
|
404
|
+
override.returns(
|
|
405
|
+
T::Array[
|
|
406
|
+
MetronomeSDK::HierarchyConfiguration::ChildHierarchyConfiguration::UsageStatementBehavior::TaggedSymbol
|
|
407
|
+
]
|
|
408
|
+
)
|
|
409
|
+
end
|
|
410
|
+
def self.values
|
|
411
|
+
end
|
|
412
|
+
end
|
|
169
413
|
end
|
|
170
414
|
|
|
171
415
|
sig do
|
|
@@ -293,6 +293,11 @@ module MetronomeSDK
|
|
|
293
293
|
T.let(:STRIPE, MetronomeSDK::PaymentGateConfig::TaxType::TaggedSymbol)
|
|
294
294
|
ANROK =
|
|
295
295
|
T.let(:ANROK, MetronomeSDK::PaymentGateConfig::TaxType::TaggedSymbol)
|
|
296
|
+
AVALARA =
|
|
297
|
+
T.let(
|
|
298
|
+
:AVALARA,
|
|
299
|
+
MetronomeSDK::PaymentGateConfig::TaxType::TaggedSymbol
|
|
300
|
+
)
|
|
296
301
|
PRECALCULATED =
|
|
297
302
|
T.let(
|
|
298
303
|
:PRECALCULATED,
|
|
@@ -302,6 +302,11 @@ module MetronomeSDK
|
|
|
302
302
|
:ANROK,
|
|
303
303
|
MetronomeSDK::PaymentGateConfigV2::TaxType::TaggedSymbol
|
|
304
304
|
)
|
|
305
|
+
AVALARA =
|
|
306
|
+
T.let(
|
|
307
|
+
:AVALARA,
|
|
308
|
+
MetronomeSDK::PaymentGateConfigV2::TaxType::TaggedSymbol
|
|
309
|
+
)
|
|
305
310
|
PRECALCULATED =
|
|
306
311
|
T.let(
|
|
307
312
|
:PRECALCULATED,
|
|
@@ -8,6 +8,17 @@ module MetronomeSDK
|
|
|
8
8
|
T.any(MetronomeSDK::Subscription, MetronomeSDK::Internal::AnyHash)
|
|
9
9
|
end
|
|
10
10
|
|
|
11
|
+
# Previous, current, and next billing periods for the subscription.
|
|
12
|
+
sig { returns(MetronomeSDK::Subscription::BillingPeriods) }
|
|
13
|
+
attr_reader :billing_periods
|
|
14
|
+
|
|
15
|
+
sig do
|
|
16
|
+
params(
|
|
17
|
+
billing_periods: MetronomeSDK::Subscription::BillingPeriods::OrHash
|
|
18
|
+
).void
|
|
19
|
+
end
|
|
20
|
+
attr_writer :billing_periods
|
|
21
|
+
|
|
11
22
|
sig do
|
|
12
23
|
returns(MetronomeSDK::Subscription::CollectionSchedule::TaggedSymbol)
|
|
13
24
|
end
|
|
@@ -90,6 +101,7 @@ module MetronomeSDK
|
|
|
90
101
|
|
|
91
102
|
sig do
|
|
92
103
|
params(
|
|
104
|
+
billing_periods: MetronomeSDK::Subscription::BillingPeriods::OrHash,
|
|
93
105
|
collection_schedule:
|
|
94
106
|
MetronomeSDK::Subscription::CollectionSchedule::OrSymbol,
|
|
95
107
|
proration: MetronomeSDK::Subscription::Proration::OrHash,
|
|
@@ -109,6 +121,8 @@ module MetronomeSDK
|
|
|
109
121
|
).returns(T.attached_class)
|
|
110
122
|
end
|
|
111
123
|
def self.new(
|
|
124
|
+
# Previous, current, and next billing periods for the subscription.
|
|
125
|
+
billing_periods:,
|
|
112
126
|
collection_schedule:,
|
|
113
127
|
proration:,
|
|
114
128
|
# Determines how the subscription's quantity is controlled. Defaults to
|
|
@@ -134,6 +148,7 @@ module MetronomeSDK
|
|
|
134
148
|
sig do
|
|
135
149
|
override.returns(
|
|
136
150
|
{
|
|
151
|
+
billing_periods: MetronomeSDK::Subscription::BillingPeriods,
|
|
137
152
|
collection_schedule:
|
|
138
153
|
MetronomeSDK::Subscription::CollectionSchedule::TaggedSymbol,
|
|
139
154
|
proration: MetronomeSDK::Subscription::Proration,
|
|
@@ -155,6 +170,166 @@ module MetronomeSDK
|
|
|
155
170
|
def to_hash
|
|
156
171
|
end
|
|
157
172
|
|
|
173
|
+
class BillingPeriods < MetronomeSDK::Internal::Type::BaseModel
|
|
174
|
+
OrHash =
|
|
175
|
+
T.type_alias do
|
|
176
|
+
T.any(
|
|
177
|
+
MetronomeSDK::Subscription::BillingPeriods,
|
|
178
|
+
MetronomeSDK::Internal::AnyHash
|
|
179
|
+
)
|
|
180
|
+
end
|
|
181
|
+
|
|
182
|
+
sig do
|
|
183
|
+
returns(
|
|
184
|
+
T.nilable(MetronomeSDK::Subscription::BillingPeriods::Current)
|
|
185
|
+
)
|
|
186
|
+
end
|
|
187
|
+
attr_reader :current
|
|
188
|
+
|
|
189
|
+
sig do
|
|
190
|
+
params(
|
|
191
|
+
current: MetronomeSDK::Subscription::BillingPeriods::Current::OrHash
|
|
192
|
+
).void
|
|
193
|
+
end
|
|
194
|
+
attr_writer :current
|
|
195
|
+
|
|
196
|
+
sig do
|
|
197
|
+
returns(T.nilable(MetronomeSDK::Subscription::BillingPeriods::Next))
|
|
198
|
+
end
|
|
199
|
+
attr_reader :next_
|
|
200
|
+
|
|
201
|
+
sig do
|
|
202
|
+
params(
|
|
203
|
+
next_: MetronomeSDK::Subscription::BillingPeriods::Next::OrHash
|
|
204
|
+
).void
|
|
205
|
+
end
|
|
206
|
+
attr_writer :next_
|
|
207
|
+
|
|
208
|
+
sig do
|
|
209
|
+
returns(
|
|
210
|
+
T.nilable(MetronomeSDK::Subscription::BillingPeriods::Previous)
|
|
211
|
+
)
|
|
212
|
+
end
|
|
213
|
+
attr_reader :previous
|
|
214
|
+
|
|
215
|
+
sig do
|
|
216
|
+
params(
|
|
217
|
+
previous:
|
|
218
|
+
MetronomeSDK::Subscription::BillingPeriods::Previous::OrHash
|
|
219
|
+
).void
|
|
220
|
+
end
|
|
221
|
+
attr_writer :previous
|
|
222
|
+
|
|
223
|
+
# Previous, current, and next billing periods for the subscription.
|
|
224
|
+
sig do
|
|
225
|
+
params(
|
|
226
|
+
current:
|
|
227
|
+
MetronomeSDK::Subscription::BillingPeriods::Current::OrHash,
|
|
228
|
+
next_: MetronomeSDK::Subscription::BillingPeriods::Next::OrHash,
|
|
229
|
+
previous:
|
|
230
|
+
MetronomeSDK::Subscription::BillingPeriods::Previous::OrHash
|
|
231
|
+
).returns(T.attached_class)
|
|
232
|
+
end
|
|
233
|
+
def self.new(current: nil, next_: nil, previous: nil)
|
|
234
|
+
end
|
|
235
|
+
|
|
236
|
+
sig do
|
|
237
|
+
override.returns(
|
|
238
|
+
{
|
|
239
|
+
current: MetronomeSDK::Subscription::BillingPeriods::Current,
|
|
240
|
+
next_: MetronomeSDK::Subscription::BillingPeriods::Next,
|
|
241
|
+
previous: MetronomeSDK::Subscription::BillingPeriods::Previous
|
|
242
|
+
}
|
|
243
|
+
)
|
|
244
|
+
end
|
|
245
|
+
def to_hash
|
|
246
|
+
end
|
|
247
|
+
|
|
248
|
+
class Current < MetronomeSDK::Internal::Type::BaseModel
|
|
249
|
+
OrHash =
|
|
250
|
+
T.type_alias do
|
|
251
|
+
T.any(
|
|
252
|
+
MetronomeSDK::Subscription::BillingPeriods::Current,
|
|
253
|
+
MetronomeSDK::Internal::AnyHash
|
|
254
|
+
)
|
|
255
|
+
end
|
|
256
|
+
|
|
257
|
+
sig { returns(Time) }
|
|
258
|
+
attr_accessor :ending_before
|
|
259
|
+
|
|
260
|
+
sig { returns(Time) }
|
|
261
|
+
attr_accessor :starting_at
|
|
262
|
+
|
|
263
|
+
sig do
|
|
264
|
+
params(ending_before: Time, starting_at: Time).returns(
|
|
265
|
+
T.attached_class
|
|
266
|
+
)
|
|
267
|
+
end
|
|
268
|
+
def self.new(ending_before:, starting_at:)
|
|
269
|
+
end
|
|
270
|
+
|
|
271
|
+
sig { override.returns({ ending_before: Time, starting_at: Time }) }
|
|
272
|
+
def to_hash
|
|
273
|
+
end
|
|
274
|
+
end
|
|
275
|
+
|
|
276
|
+
class Next < MetronomeSDK::Internal::Type::BaseModel
|
|
277
|
+
OrHash =
|
|
278
|
+
T.type_alias do
|
|
279
|
+
T.any(
|
|
280
|
+
MetronomeSDK::Subscription::BillingPeriods::Next,
|
|
281
|
+
MetronomeSDK::Internal::AnyHash
|
|
282
|
+
)
|
|
283
|
+
end
|
|
284
|
+
|
|
285
|
+
sig { returns(Time) }
|
|
286
|
+
attr_accessor :ending_before
|
|
287
|
+
|
|
288
|
+
sig { returns(Time) }
|
|
289
|
+
attr_accessor :starting_at
|
|
290
|
+
|
|
291
|
+
sig do
|
|
292
|
+
params(ending_before: Time, starting_at: Time).returns(
|
|
293
|
+
T.attached_class
|
|
294
|
+
)
|
|
295
|
+
end
|
|
296
|
+
def self.new(ending_before:, starting_at:)
|
|
297
|
+
end
|
|
298
|
+
|
|
299
|
+
sig { override.returns({ ending_before: Time, starting_at: Time }) }
|
|
300
|
+
def to_hash
|
|
301
|
+
end
|
|
302
|
+
end
|
|
303
|
+
|
|
304
|
+
class Previous < MetronomeSDK::Internal::Type::BaseModel
|
|
305
|
+
OrHash =
|
|
306
|
+
T.type_alias do
|
|
307
|
+
T.any(
|
|
308
|
+
MetronomeSDK::Subscription::BillingPeriods::Previous,
|
|
309
|
+
MetronomeSDK::Internal::AnyHash
|
|
310
|
+
)
|
|
311
|
+
end
|
|
312
|
+
|
|
313
|
+
sig { returns(Time) }
|
|
314
|
+
attr_accessor :ending_before
|
|
315
|
+
|
|
316
|
+
sig { returns(Time) }
|
|
317
|
+
attr_accessor :starting_at
|
|
318
|
+
|
|
319
|
+
sig do
|
|
320
|
+
params(ending_before: Time, starting_at: Time).returns(
|
|
321
|
+
T.attached_class
|
|
322
|
+
)
|
|
323
|
+
end
|
|
324
|
+
def self.new(ending_before:, starting_at:)
|
|
325
|
+
end
|
|
326
|
+
|
|
327
|
+
sig { override.returns({ ending_before: Time, starting_at: Time }) }
|
|
328
|
+
def to_hash
|
|
329
|
+
end
|
|
330
|
+
end
|
|
331
|
+
end
|
|
332
|
+
|
|
158
333
|
module CollectionSchedule
|
|
159
334
|
extend MetronomeSDK::Internal::Type::Enum
|
|
160
335
|
|
|
@@ -15,11 +15,12 @@ module MetronomeSDK
|
|
|
15
15
|
)
|
|
16
16
|
end
|
|
17
17
|
|
|
18
|
-
# The Metronome ID of the
|
|
18
|
+
# The Metronome ID of the threshold notification
|
|
19
19
|
sig { returns(String) }
|
|
20
20
|
attr_accessor :id
|
|
21
21
|
|
|
22
|
-
# If true, resets the uniqueness key on this
|
|
22
|
+
# If true, resets the uniqueness key on this threshold notification so it can be
|
|
23
|
+
# re-used
|
|
23
24
|
sig { returns(T.nilable(T::Boolean)) }
|
|
24
25
|
attr_reader :release_uniqueness_key
|
|
25
26
|
|
|
@@ -34,9 +35,10 @@ module MetronomeSDK
|
|
|
34
35
|
).returns(T.attached_class)
|
|
35
36
|
end
|
|
36
37
|
def self.new(
|
|
37
|
-
# The Metronome ID of the
|
|
38
|
+
# The Metronome ID of the threshold notification
|
|
38
39
|
id:,
|
|
39
|
-
# If true, resets the uniqueness key on this
|
|
40
|
+
# If true, resets the uniqueness key on this threshold notification so it can be
|
|
41
|
+
# re-used
|
|
40
42
|
release_uniqueness_key: nil,
|
|
41
43
|
request_options: {}
|
|
42
44
|
)
|