metronome-sdk 1.0.0 → 2.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 (193) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +91 -0
  3. data/README.md +1 -1
  4. data/lib/metronome_sdk/errors.rb +25 -11
  5. data/lib/metronome_sdk/file_part.rb +10 -7
  6. data/lib/metronome_sdk/internal/body_cursor_page.rb +1 -1
  7. data/lib/metronome_sdk/internal/cursor_page.rb +1 -1
  8. data/lib/metronome_sdk/internal/cursor_page_without_limit.rb +1 -1
  9. data/lib/metronome_sdk/internal/transport/base_client.rb +11 -7
  10. data/lib/metronome_sdk/internal/transport/pooled_net_requester.rb +34 -31
  11. data/lib/metronome_sdk/internal/type/base_page.rb +1 -1
  12. data/lib/metronome_sdk/internal/type/enum.rb +25 -0
  13. data/lib/metronome_sdk/internal/type/file_input.rb +7 -4
  14. data/lib/metronome_sdk/internal/util.rb +8 -7
  15. data/lib/metronome_sdk/models/contract.rb +1 -0
  16. data/lib/metronome_sdk/models/contract_v2.rb +275 -6
  17. data/lib/metronome_sdk/models/contract_without_amendments.rb +2 -2
  18. data/lib/metronome_sdk/models/hierarchy_configuration.rb +123 -2
  19. data/lib/metronome_sdk/models/payment_gate_config.rb +1 -0
  20. data/lib/metronome_sdk/models/payment_gate_config_v2.rb +1 -0
  21. data/lib/metronome_sdk/models/subscription.rb +95 -1
  22. data/lib/metronome_sdk/models/v1/alert_archive_params.rb +8 -4
  23. data/lib/metronome_sdk/models/v1/alert_create_params.rb +38 -36
  24. data/lib/metronome_sdk/models/v1/contract_amend_params.rb +1 -0
  25. data/lib/metronome_sdk/models/v1/contract_create_params.rb +157 -9
  26. data/lib/metronome_sdk/models/v1/contract_list_balances_params.rb +9 -1
  27. data/lib/metronome_sdk/models/v1/customer_create_params.rb +11 -1
  28. data/lib/metronome_sdk/models/v1/customer_detail.rb +9 -1
  29. data/lib/metronome_sdk/models/v1/customer_preview_events_params.rb +19 -25
  30. data/lib/metronome_sdk/models/v1/customer_preview_events_response.rb +3 -3
  31. data/lib/metronome_sdk/models/v1/customer_retrieve_billing_configurations_response.rb +1 -0
  32. data/lib/metronome_sdk/models/v1/customer_set_billing_configurations_params.rb +1 -0
  33. data/lib/metronome_sdk/models/v1/customers/alert_list_params.rb +3 -3
  34. data/lib/metronome_sdk/models/v1/customers/alert_reset_params.rb +2 -2
  35. data/lib/metronome_sdk/models/v1/customers/alert_retrieve_params.rb +12 -12
  36. data/lib/metronome_sdk/models/v1/customers/billing_config_create_params.rb +6 -1
  37. data/lib/metronome_sdk/models/v1/customers/billing_config_delete_params.rb +1 -0
  38. data/lib/metronome_sdk/models/v1/customers/billing_config_retrieve_params.rb +1 -0
  39. data/lib/metronome_sdk/models/v1/customers/billing_config_retrieve_response.rb +6 -1
  40. data/lib/metronome_sdk/models/v1/customers/commit_create_params.rb +1 -1
  41. data/lib/metronome_sdk/models/v1/customers/customer_alert.rb +41 -38
  42. data/lib/metronome_sdk/models/v1/customers/invoice.rb +256 -16
  43. data/lib/metronome_sdk/models/v1/customers/invoice_retrieve_pdf_params.rb +30 -0
  44. data/lib/metronome_sdk/models/v1/payment.rb +157 -0
  45. data/lib/metronome_sdk/models/v1/payment_attempt_params.rb +28 -0
  46. data/lib/metronome_sdk/models/v1/payment_attempt_response.rb +18 -0
  47. data/lib/metronome_sdk/models/v1/payment_cancel_params.rb +28 -0
  48. data/lib/metronome_sdk/models/v1/payment_cancel_response.rb +18 -0
  49. data/lib/metronome_sdk/models/v1/payment_list_params.rb +53 -0
  50. data/lib/metronome_sdk/models/v1/payment_status.rb +19 -0
  51. data/lib/metronome_sdk/models/v1/setting_upsert_avalara_credentials_params.rb +65 -0
  52. data/lib/metronome_sdk/models/v1/setting_upsert_avalara_credentials_response.rb +12 -0
  53. data/lib/metronome_sdk/models/v1/settings/billing_provider_create_params.rb +73 -0
  54. data/lib/metronome_sdk/models/v1/settings/billing_provider_create_response.rb +31 -0
  55. data/lib/metronome_sdk/models/v1/settings/billing_provider_list_params.rb +26 -0
  56. data/lib/metronome_sdk/models/v1/settings/billing_provider_list_response.rb +105 -0
  57. data/lib/metronome_sdk/models/v2/contract_edit_commit_params.rb +9 -1
  58. data/lib/metronome_sdk/models/v2/contract_edit_credit_params.rb +9 -1
  59. data/lib/metronome_sdk/models/v2/contract_edit_params.rb +219 -9
  60. data/lib/metronome_sdk/models/v2/contract_get_edit_history_response.rb +195 -8
  61. data/lib/metronome_sdk/resources/v1/alerts.rb +57 -53
  62. data/lib/metronome_sdk/resources/v1/contracts.rb +8 -5
  63. data/lib/metronome_sdk/resources/v1/credit_grants.rb +10 -5
  64. data/lib/metronome_sdk/resources/v1/customers/alerts.rb +70 -51
  65. data/lib/metronome_sdk/resources/v1/customers/billing_config.rb +7 -4
  66. data/lib/metronome_sdk/resources/v1/customers/commits.rb +2 -1
  67. data/lib/metronome_sdk/resources/v1/customers/invoices.rb +57 -1
  68. data/lib/metronome_sdk/resources/v1/customers/plans.rb +8 -4
  69. data/lib/metronome_sdk/resources/v1/customers.rb +13 -8
  70. data/lib/metronome_sdk/resources/v1/payments.rb +102 -0
  71. data/lib/metronome_sdk/resources/v1/plans.rb +8 -4
  72. data/lib/metronome_sdk/resources/v1/settings/billing_providers.rb +75 -0
  73. data/lib/metronome_sdk/resources/v1/settings.rb +55 -0
  74. data/lib/metronome_sdk/resources/v1/usage.rb +4 -2
  75. data/lib/metronome_sdk/resources/v1.rb +8 -0
  76. data/lib/metronome_sdk/resources/v2/contracts.rb +9 -3
  77. data/lib/metronome_sdk/version.rb +1 -1
  78. data/lib/metronome_sdk.rb +17 -0
  79. data/rbi/metronome_sdk/errors.rbi +29 -2
  80. data/rbi/metronome_sdk/file_part.rbi +1 -1
  81. data/rbi/metronome_sdk/internal/transport/base_client.rbi +4 -5
  82. data/rbi/metronome_sdk/internal/type/base_page.rbi +1 -1
  83. data/rbi/metronome_sdk/internal/util.rbi +1 -1
  84. data/rbi/metronome_sdk/models/contract.rbi +5 -0
  85. data/rbi/metronome_sdk/models/contract_v2.rbi +635 -10
  86. data/rbi/metronome_sdk/models/contract_without_amendments.rbi +2 -2
  87. data/rbi/metronome_sdk/models/hierarchy_configuration.rbi +286 -6
  88. data/rbi/metronome_sdk/models/payment_gate_config.rbi +5 -0
  89. data/rbi/metronome_sdk/models/payment_gate_config_v2.rbi +5 -0
  90. data/rbi/metronome_sdk/models/subscription.rbi +190 -0
  91. data/rbi/metronome_sdk/models/v1/alert_archive_params.rbi +6 -4
  92. data/rbi/metronome_sdk/models/v1/alert_create_params.rbi +51 -47
  93. data/rbi/metronome_sdk/models/v1/contract_amend_params.rbi +5 -0
  94. data/rbi/metronome_sdk/models/v1/contract_create_params.rbi +326 -10
  95. data/rbi/metronome_sdk/models/v1/contract_list_balances_params.rbi +11 -0
  96. data/rbi/metronome_sdk/models/v1/customer_create_params.rbi +11 -0
  97. data/rbi/metronome_sdk/models/v1/customer_detail.rbi +8 -0
  98. data/rbi/metronome_sdk/models/v1/customer_preview_events_params.rbi +24 -32
  99. data/rbi/metronome_sdk/models/v1/customer_preview_events_response.rbi +10 -9
  100. data/rbi/metronome_sdk/models/v1/customer_retrieve_billing_configurations_response.rbi +5 -0
  101. data/rbi/metronome_sdk/models/v1/customer_set_billing_configurations_params.rbi +5 -0
  102. data/rbi/metronome_sdk/models/v1/customers/alert_list_params.rbi +4 -4
  103. data/rbi/metronome_sdk/models/v1/customers/alert_reset_params.rbi +2 -2
  104. data/rbi/metronome_sdk/models/v1/customers/alert_retrieve_params.rbi +14 -14
  105. data/rbi/metronome_sdk/models/v1/customers/billing_config_create_params.rbi +11 -0
  106. data/rbi/metronome_sdk/models/v1/customers/billing_config_delete_params.rbi +5 -0
  107. data/rbi/metronome_sdk/models/v1/customers/billing_config_retrieve_params.rbi +5 -0
  108. data/rbi/metronome_sdk/models/v1/customers/billing_config_retrieve_response.rbi +6 -0
  109. data/rbi/metronome_sdk/models/v1/customers/commit_create_params.rbi +2 -2
  110. data/rbi/metronome_sdk/models/v1/customers/customer_alert.rbi +53 -44
  111. data/rbi/metronome_sdk/models/v1/customers/invoice.rbi +462 -38
  112. data/rbi/metronome_sdk/models/v1/customers/invoice_retrieve_pdf_params.rbi +50 -0
  113. data/rbi/metronome_sdk/models/v1/payment.rbi +324 -0
  114. data/rbi/metronome_sdk/models/v1/payment_attempt_params.rbi +48 -0
  115. data/rbi/metronome_sdk/models/v1/payment_attempt_response.rbi +35 -0
  116. data/rbi/metronome_sdk/models/v1/payment_cancel_params.rbi +48 -0
  117. data/rbi/metronome_sdk/models/v1/payment_cancel_response.rbi +35 -0
  118. data/rbi/metronome_sdk/models/v1/payment_list_params.rbi +91 -0
  119. data/rbi/metronome_sdk/models/v1/payment_status.rbi +33 -0
  120. data/rbi/metronome_sdk/models/v1/setting_upsert_avalara_credentials_params.rbi +115 -0
  121. data/rbi/metronome_sdk/models/v1/setting_upsert_avalara_credentials_response.rbi +25 -0
  122. data/rbi/metronome_sdk/models/v1/settings/billing_provider_create_params.rbi +157 -0
  123. data/rbi/metronome_sdk/models/v1/settings/billing_provider_create_response.rbi +75 -0
  124. data/rbi/metronome_sdk/models/v1/settings/billing_provider_list_params.rbi +50 -0
  125. data/rbi/metronome_sdk/models/v1/settings/billing_provider_list_response.rbi +245 -0
  126. data/rbi/metronome_sdk/models/v2/contract_edit_commit_params.rbi +18 -0
  127. data/rbi/metronome_sdk/models/v2/contract_edit_credit_params.rbi +18 -0
  128. data/rbi/metronome_sdk/models/v2/contract_edit_params.rbi +536 -12
  129. data/rbi/metronome_sdk/models/v2/contract_get_edit_history_response.rbi +462 -14
  130. data/rbi/metronome_sdk/resources/v1/alerts.rbi +68 -64
  131. data/rbi/metronome_sdk/resources/v1/contracts.rbi +8 -4
  132. data/rbi/metronome_sdk/resources/v1/credit_grants.rbi +10 -5
  133. data/rbi/metronome_sdk/resources/v1/customers/alerts.rbi +73 -54
  134. data/rbi/metronome_sdk/resources/v1/customers/billing_config.rbi +8 -4
  135. data/rbi/metronome_sdk/resources/v1/customers/commits.rbi +3 -2
  136. data/rbi/metronome_sdk/resources/v1/customers/invoices.rbi +38 -1
  137. data/rbi/metronome_sdk/resources/v1/customers/plans.rbi +8 -4
  138. data/rbi/metronome_sdk/resources/v1/customers.rbi +17 -11
  139. data/rbi/metronome_sdk/resources/v1/payments.rbi +72 -0
  140. data/rbi/metronome_sdk/resources/v1/plans.rbi +8 -4
  141. data/rbi/metronome_sdk/resources/v1/settings/billing_providers.rbi +63 -0
  142. data/rbi/metronome_sdk/resources/v1/settings.rbi +47 -0
  143. data/rbi/metronome_sdk/resources/v1/usage.rbi +4 -2
  144. data/rbi/metronome_sdk/resources/v1.rbi +6 -0
  145. data/rbi/metronome_sdk/resources/v2/contracts.rbi +14 -0
  146. data/sig/metronome_sdk/errors.rbs +7 -0
  147. data/sig/metronome_sdk/file_part.rbs +1 -1
  148. data/sig/metronome_sdk/models/contract.rbs +2 -0
  149. data/sig/metronome_sdk/models/contract_v2.rbs +241 -12
  150. data/sig/metronome_sdk/models/hierarchy_configuration.rbs +87 -6
  151. data/sig/metronome_sdk/models/payment_gate_config.rbs +2 -1
  152. data/sig/metronome_sdk/models/payment_gate_config_v2.rbs +2 -1
  153. data/sig/metronome_sdk/models/subscription.rbs +80 -0
  154. data/sig/metronome_sdk/models/v1/contract_amend_params.rbs +2 -1
  155. data/sig/metronome_sdk/models/v1/contract_create_params.rbs +91 -5
  156. data/sig/metronome_sdk/models/v1/contract_list_balances_params.rbs +7 -0
  157. data/sig/metronome_sdk/models/v1/customer_create_params.rbs +2 -0
  158. data/sig/metronome_sdk/models/v1/customer_detail.rbs +5 -0
  159. data/sig/metronome_sdk/models/v1/customer_preview_events_params.rbs +0 -7
  160. data/sig/metronome_sdk/models/v1/customer_preview_events_response.rbs +6 -4
  161. data/sig/metronome_sdk/models/v1/customer_retrieve_billing_configurations_response.rbs +2 -0
  162. data/sig/metronome_sdk/models/v1/customer_set_billing_configurations_params.rbs +2 -0
  163. data/sig/metronome_sdk/models/v1/customers/billing_config_create_params.rbs +2 -0
  164. data/sig/metronome_sdk/models/v1/customers/billing_config_delete_params.rbs +2 -0
  165. data/sig/metronome_sdk/models/v1/customers/billing_config_retrieve_params.rbs +2 -0
  166. data/sig/metronome_sdk/models/v1/customers/customer_alert.rbs +2 -0
  167. data/sig/metronome_sdk/models/v1/customers/invoice.rbs +244 -19
  168. data/sig/metronome_sdk/models/v1/customers/invoice_retrieve_pdf_params.rbs +32 -0
  169. data/sig/metronome_sdk/models/v1/payment.rbs +198 -0
  170. data/sig/metronome_sdk/models/v1/payment_attempt_params.rbs +30 -0
  171. data/sig/metronome_sdk/models/v1/payment_attempt_response.rbs +15 -0
  172. data/sig/metronome_sdk/models/v1/payment_cancel_params.rbs +30 -0
  173. data/sig/metronome_sdk/models/v1/payment_cancel_response.rbs +15 -0
  174. data/sig/metronome_sdk/models/v1/payment_list_params.rbs +56 -0
  175. data/sig/metronome_sdk/models/v1/payment_status.rbs +19 -0
  176. data/sig/metronome_sdk/models/v1/setting_upsert_avalara_credentials_params.rbs +54 -0
  177. data/sig/metronome_sdk/models/v1/setting_upsert_avalara_credentials_response.rbs +13 -0
  178. data/sig/metronome_sdk/models/v1/settings/billing_provider_create_params.rbs +64 -0
  179. data/sig/metronome_sdk/models/v1/settings/billing_provider_create_response.rbs +34 -0
  180. data/sig/metronome_sdk/models/v1/settings/billing_provider_list_params.rbs +28 -0
  181. data/sig/metronome_sdk/models/v1/settings/billing_provider_list_response.rbs +102 -0
  182. data/sig/metronome_sdk/models/v2/contract_edit_commit_params.rbs +9 -0
  183. data/sig/metronome_sdk/models/v2/contract_edit_credit_params.rbs +9 -0
  184. data/sig/metronome_sdk/models/v2/contract_edit_params.rbs +184 -7
  185. data/sig/metronome_sdk/models/v2/contract_get_edit_history_response.rbs +221 -18
  186. data/sig/metronome_sdk/resources/v1/contracts.rbs +1 -0
  187. data/sig/metronome_sdk/resources/v1/customers/invoices.rbs +6 -0
  188. data/sig/metronome_sdk/resources/v1/payments.rbs +30 -0
  189. data/sig/metronome_sdk/resources/v1/settings/billing_providers.rbs +23 -0
  190. data/sig/metronome_sdk/resources/v1/settings.rbs +19 -0
  191. data/sig/metronome_sdk/resources/v1.rbs +4 -0
  192. data/sig/metronome_sdk/resources/v2/contracts.rbs +3 -0
  193. metadata +53 -2
@@ -0,0 +1,50 @@
1
+ # typed: strong
2
+
3
+ module MetronomeSDK
4
+ module Models
5
+ module V1
6
+ module Customers
7
+ class InvoiceRetrievePdfParams < MetronomeSDK::Internal::Type::BaseModel
8
+ extend MetronomeSDK::Internal::Type::RequestParameters::Converter
9
+ include MetronomeSDK::Internal::Type::RequestParameters
10
+
11
+ OrHash =
12
+ T.type_alias do
13
+ T.any(
14
+ MetronomeSDK::V1::Customers::InvoiceRetrievePdfParams,
15
+ MetronomeSDK::Internal::AnyHash
16
+ )
17
+ end
18
+
19
+ sig { returns(String) }
20
+ attr_accessor :customer_id
21
+
22
+ sig { returns(String) }
23
+ attr_accessor :invoice_id
24
+
25
+ sig do
26
+ params(
27
+ customer_id: String,
28
+ invoice_id: String,
29
+ request_options: MetronomeSDK::RequestOptions::OrHash
30
+ ).returns(T.attached_class)
31
+ end
32
+ def self.new(customer_id:, invoice_id:, request_options: {})
33
+ end
34
+
35
+ sig do
36
+ override.returns(
37
+ {
38
+ customer_id: String,
39
+ invoice_id: String,
40
+ request_options: MetronomeSDK::RequestOptions
41
+ }
42
+ )
43
+ end
44
+ def to_hash
45
+ end
46
+ end
47
+ end
48
+ end
49
+ end
50
+ end
@@ -0,0 +1,324 @@
1
+ # typed: strong
2
+
3
+ module MetronomeSDK
4
+ module Models
5
+ module V1
6
+ class Payment < MetronomeSDK::Internal::Type::BaseModel
7
+ OrHash =
8
+ T.type_alias do
9
+ T.any(MetronomeSDK::V1::Payment, MetronomeSDK::Internal::AnyHash)
10
+ end
11
+
12
+ sig { returns(String) }
13
+ attr_accessor :id
14
+
15
+ sig { returns(T.nilable(Float)) }
16
+ attr_reader :amount
17
+
18
+ sig { params(amount: Float).void }
19
+ attr_writer :amount
20
+
21
+ sig { returns(T.nilable(Float)) }
22
+ attr_reader :amount_paid
23
+
24
+ sig { params(amount_paid: Float).void }
25
+ attr_writer :amount_paid
26
+
27
+ sig { returns(T.nilable(String)) }
28
+ attr_reader :contract_id
29
+
30
+ sig { params(contract_id: String).void }
31
+ attr_writer :contract_id
32
+
33
+ sig { returns(T.nilable(Time)) }
34
+ attr_reader :created_at
35
+
36
+ sig { params(created_at: Time).void }
37
+ attr_writer :created_at
38
+
39
+ sig { returns(T.nilable(String)) }
40
+ attr_reader :customer_id
41
+
42
+ sig { params(customer_id: String).void }
43
+ attr_writer :customer_id
44
+
45
+ sig { returns(T.nilable(String)) }
46
+ attr_reader :error_message
47
+
48
+ sig { params(error_message: String).void }
49
+ attr_writer :error_message
50
+
51
+ sig { returns(T.nilable(MetronomeSDK::CreditTypeData)) }
52
+ attr_reader :fiat_credit_type
53
+
54
+ sig do
55
+ params(fiat_credit_type: MetronomeSDK::CreditTypeData::OrHash).void
56
+ end
57
+ attr_writer :fiat_credit_type
58
+
59
+ sig { returns(T.nilable(String)) }
60
+ attr_reader :invoice_id
61
+
62
+ sig { params(invoice_id: String).void }
63
+ attr_writer :invoice_id
64
+
65
+ sig { returns(T.nilable(MetronomeSDK::V1::Payment::PaymentGateway)) }
66
+ attr_reader :payment_gateway
67
+
68
+ sig do
69
+ params(
70
+ payment_gateway: MetronomeSDK::V1::Payment::PaymentGateway::OrHash
71
+ ).void
72
+ end
73
+ attr_writer :payment_gateway
74
+
75
+ sig do
76
+ returns(T.nilable(MetronomeSDK::V1::PaymentStatus::TaggedSymbol))
77
+ end
78
+ attr_reader :status
79
+
80
+ sig { params(status: MetronomeSDK::V1::PaymentStatus::OrSymbol).void }
81
+ attr_writer :status
82
+
83
+ sig { returns(T.nilable(Time)) }
84
+ attr_reader :updated_at
85
+
86
+ sig { params(updated_at: Time).void }
87
+ attr_writer :updated_at
88
+
89
+ sig do
90
+ params(
91
+ id: String,
92
+ amount: Float,
93
+ amount_paid: Float,
94
+ contract_id: String,
95
+ created_at: Time,
96
+ customer_id: String,
97
+ error_message: String,
98
+ fiat_credit_type: MetronomeSDK::CreditTypeData::OrHash,
99
+ invoice_id: String,
100
+ payment_gateway: MetronomeSDK::V1::Payment::PaymentGateway::OrHash,
101
+ status: MetronomeSDK::V1::PaymentStatus::OrSymbol,
102
+ updated_at: Time
103
+ ).returns(T.attached_class)
104
+ end
105
+ def self.new(
106
+ id:,
107
+ amount: nil,
108
+ amount_paid: nil,
109
+ contract_id: nil,
110
+ created_at: nil,
111
+ customer_id: nil,
112
+ error_message: nil,
113
+ fiat_credit_type: nil,
114
+ invoice_id: nil,
115
+ payment_gateway: nil,
116
+ status: nil,
117
+ updated_at: nil
118
+ )
119
+ end
120
+
121
+ sig do
122
+ override.returns(
123
+ {
124
+ id: String,
125
+ amount: Float,
126
+ amount_paid: Float,
127
+ contract_id: String,
128
+ created_at: Time,
129
+ customer_id: String,
130
+ error_message: String,
131
+ fiat_credit_type: MetronomeSDK::CreditTypeData,
132
+ invoice_id: String,
133
+ payment_gateway: MetronomeSDK::V1::Payment::PaymentGateway,
134
+ status: MetronomeSDK::V1::PaymentStatus::TaggedSymbol,
135
+ updated_at: Time
136
+ }
137
+ )
138
+ end
139
+ def to_hash
140
+ end
141
+
142
+ class PaymentGateway < MetronomeSDK::Internal::Type::BaseModel
143
+ OrHash =
144
+ T.type_alias do
145
+ T.any(
146
+ MetronomeSDK::V1::Payment::PaymentGateway,
147
+ MetronomeSDK::Internal::AnyHash
148
+ )
149
+ end
150
+
151
+ sig { returns(MetronomeSDK::V1::Payment::PaymentGateway::Stripe) }
152
+ attr_reader :stripe
153
+
154
+ sig do
155
+ params(
156
+ stripe: MetronomeSDK::V1::Payment::PaymentGateway::Stripe::OrHash
157
+ ).void
158
+ end
159
+ attr_writer :stripe
160
+
161
+ sig do
162
+ returns(
163
+ MetronomeSDK::V1::Payment::PaymentGateway::Type::TaggedSymbol
164
+ )
165
+ end
166
+ attr_accessor :type
167
+
168
+ sig do
169
+ params(
170
+ stripe: MetronomeSDK::V1::Payment::PaymentGateway::Stripe::OrHash,
171
+ type: MetronomeSDK::V1::Payment::PaymentGateway::Type::OrSymbol
172
+ ).returns(T.attached_class)
173
+ end
174
+ def self.new(stripe:, type:)
175
+ end
176
+
177
+ sig do
178
+ override.returns(
179
+ {
180
+ stripe: MetronomeSDK::V1::Payment::PaymentGateway::Stripe,
181
+ type:
182
+ MetronomeSDK::V1::Payment::PaymentGateway::Type::TaggedSymbol
183
+ }
184
+ )
185
+ end
186
+ def to_hash
187
+ end
188
+
189
+ class Stripe < MetronomeSDK::Internal::Type::BaseModel
190
+ OrHash =
191
+ T.type_alias do
192
+ T.any(
193
+ MetronomeSDK::V1::Payment::PaymentGateway::Stripe,
194
+ MetronomeSDK::Internal::AnyHash
195
+ )
196
+ end
197
+
198
+ sig { returns(String) }
199
+ attr_accessor :payment_intent_id
200
+
201
+ sig do
202
+ returns(
203
+ T.nilable(
204
+ MetronomeSDK::V1::Payment::PaymentGateway::Stripe::Error
205
+ )
206
+ )
207
+ end
208
+ attr_reader :error
209
+
210
+ sig do
211
+ params(
212
+ error:
213
+ MetronomeSDK::V1::Payment::PaymentGateway::Stripe::Error::OrHash
214
+ ).void
215
+ end
216
+ attr_writer :error
217
+
218
+ sig { returns(T.nilable(String)) }
219
+ attr_reader :payment_method_id
220
+
221
+ sig { params(payment_method_id: String).void }
222
+ attr_writer :payment_method_id
223
+
224
+ sig do
225
+ params(
226
+ payment_intent_id: String,
227
+ error:
228
+ MetronomeSDK::V1::Payment::PaymentGateway::Stripe::Error::OrHash,
229
+ payment_method_id: String
230
+ ).returns(T.attached_class)
231
+ end
232
+ def self.new(payment_intent_id:, error: nil, payment_method_id: nil)
233
+ end
234
+
235
+ sig do
236
+ override.returns(
237
+ {
238
+ payment_intent_id: String,
239
+ error:
240
+ MetronomeSDK::V1::Payment::PaymentGateway::Stripe::Error,
241
+ payment_method_id: String
242
+ }
243
+ )
244
+ end
245
+ def to_hash
246
+ end
247
+
248
+ class Error < MetronomeSDK::Internal::Type::BaseModel
249
+ OrHash =
250
+ T.type_alias do
251
+ T.any(
252
+ MetronomeSDK::V1::Payment::PaymentGateway::Stripe::Error,
253
+ MetronomeSDK::Internal::AnyHash
254
+ )
255
+ end
256
+
257
+ sig { returns(T.nilable(String)) }
258
+ attr_reader :code
259
+
260
+ sig { params(code: String).void }
261
+ attr_writer :code
262
+
263
+ sig { returns(T.nilable(String)) }
264
+ attr_reader :decline_code
265
+
266
+ sig { params(decline_code: String).void }
267
+ attr_writer :decline_code
268
+
269
+ sig { returns(T.nilable(String)) }
270
+ attr_reader :type
271
+
272
+ sig { params(type: String).void }
273
+ attr_writer :type
274
+
275
+ sig do
276
+ params(
277
+ code: String,
278
+ decline_code: String,
279
+ type: String
280
+ ).returns(T.attached_class)
281
+ end
282
+ def self.new(code: nil, decline_code: nil, type: nil)
283
+ end
284
+
285
+ sig do
286
+ override.returns(
287
+ { code: String, decline_code: String, type: String }
288
+ )
289
+ end
290
+ def to_hash
291
+ end
292
+ end
293
+ end
294
+
295
+ module Type
296
+ extend MetronomeSDK::Internal::Type::Enum
297
+
298
+ TaggedSymbol =
299
+ T.type_alias do
300
+ T.all(Symbol, MetronomeSDK::V1::Payment::PaymentGateway::Type)
301
+ end
302
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
303
+
304
+ STRIPE =
305
+ T.let(
306
+ :stripe,
307
+ MetronomeSDK::V1::Payment::PaymentGateway::Type::TaggedSymbol
308
+ )
309
+
310
+ sig do
311
+ override.returns(
312
+ T::Array[
313
+ MetronomeSDK::V1::Payment::PaymentGateway::Type::TaggedSymbol
314
+ ]
315
+ )
316
+ end
317
+ def self.values
318
+ end
319
+ end
320
+ end
321
+ end
322
+ end
323
+ end
324
+ end
@@ -0,0 +1,48 @@
1
+ # typed: strong
2
+
3
+ module MetronomeSDK
4
+ module Models
5
+ module V1
6
+ class PaymentAttemptParams < MetronomeSDK::Internal::Type::BaseModel
7
+ extend MetronomeSDK::Internal::Type::RequestParameters::Converter
8
+ include MetronomeSDK::Internal::Type::RequestParameters
9
+
10
+ OrHash =
11
+ T.type_alias do
12
+ T.any(
13
+ MetronomeSDK::V1::PaymentAttemptParams,
14
+ MetronomeSDK::Internal::AnyHash
15
+ )
16
+ end
17
+
18
+ sig { returns(String) }
19
+ attr_accessor :customer_id
20
+
21
+ sig { returns(String) }
22
+ attr_accessor :invoice_id
23
+
24
+ sig do
25
+ params(
26
+ customer_id: String,
27
+ invoice_id: String,
28
+ request_options: MetronomeSDK::RequestOptions::OrHash
29
+ ).returns(T.attached_class)
30
+ end
31
+ def self.new(customer_id:, invoice_id:, request_options: {})
32
+ end
33
+
34
+ sig do
35
+ override.returns(
36
+ {
37
+ customer_id: String,
38
+ invoice_id: String,
39
+ request_options: MetronomeSDK::RequestOptions
40
+ }
41
+ )
42
+ end
43
+ def to_hash
44
+ end
45
+ end
46
+ end
47
+ end
48
+ end
@@ -0,0 +1,35 @@
1
+ # typed: strong
2
+
3
+ module MetronomeSDK
4
+ module Models
5
+ module V1
6
+ class PaymentAttemptResponse < MetronomeSDK::Internal::Type::BaseModel
7
+ OrHash =
8
+ T.type_alias do
9
+ T.any(
10
+ MetronomeSDK::Models::V1::PaymentAttemptResponse,
11
+ MetronomeSDK::Internal::AnyHash
12
+ )
13
+ end
14
+
15
+ sig { returns(MetronomeSDK::V1::Payment) }
16
+ attr_reader :data
17
+
18
+ sig { params(data: MetronomeSDK::V1::Payment::OrHash).void }
19
+ attr_writer :data
20
+
21
+ sig do
22
+ params(data: MetronomeSDK::V1::Payment::OrHash).returns(
23
+ T.attached_class
24
+ )
25
+ end
26
+ def self.new(data:)
27
+ end
28
+
29
+ sig { override.returns({ data: MetronomeSDK::V1::Payment }) }
30
+ def to_hash
31
+ end
32
+ end
33
+ end
34
+ end
35
+ end
@@ -0,0 +1,48 @@
1
+ # typed: strong
2
+
3
+ module MetronomeSDK
4
+ module Models
5
+ module V1
6
+ class PaymentCancelParams < MetronomeSDK::Internal::Type::BaseModel
7
+ extend MetronomeSDK::Internal::Type::RequestParameters::Converter
8
+ include MetronomeSDK::Internal::Type::RequestParameters
9
+
10
+ OrHash =
11
+ T.type_alias do
12
+ T.any(
13
+ MetronomeSDK::V1::PaymentCancelParams,
14
+ MetronomeSDK::Internal::AnyHash
15
+ )
16
+ end
17
+
18
+ sig { returns(String) }
19
+ attr_accessor :customer_id
20
+
21
+ sig { returns(String) }
22
+ attr_accessor :invoice_id
23
+
24
+ sig do
25
+ params(
26
+ customer_id: String,
27
+ invoice_id: String,
28
+ request_options: MetronomeSDK::RequestOptions::OrHash
29
+ ).returns(T.attached_class)
30
+ end
31
+ def self.new(customer_id:, invoice_id:, request_options: {})
32
+ end
33
+
34
+ sig do
35
+ override.returns(
36
+ {
37
+ customer_id: String,
38
+ invoice_id: String,
39
+ request_options: MetronomeSDK::RequestOptions
40
+ }
41
+ )
42
+ end
43
+ def to_hash
44
+ end
45
+ end
46
+ end
47
+ end
48
+ end
@@ -0,0 +1,35 @@
1
+ # typed: strong
2
+
3
+ module MetronomeSDK
4
+ module Models
5
+ module V1
6
+ class PaymentCancelResponse < MetronomeSDK::Internal::Type::BaseModel
7
+ OrHash =
8
+ T.type_alias do
9
+ T.any(
10
+ MetronomeSDK::Models::V1::PaymentCancelResponse,
11
+ MetronomeSDK::Internal::AnyHash
12
+ )
13
+ end
14
+
15
+ sig { returns(MetronomeSDK::V1::Payment) }
16
+ attr_reader :data
17
+
18
+ sig { params(data: MetronomeSDK::V1::Payment::OrHash).void }
19
+ attr_writer :data
20
+
21
+ sig do
22
+ params(data: MetronomeSDK::V1::Payment::OrHash).returns(
23
+ T.attached_class
24
+ )
25
+ end
26
+ def self.new(data:)
27
+ end
28
+
29
+ sig { override.returns({ data: MetronomeSDK::V1::Payment }) }
30
+ def to_hash
31
+ end
32
+ end
33
+ end
34
+ end
35
+ end
@@ -0,0 +1,91 @@
1
+ # typed: strong
2
+
3
+ module MetronomeSDK
4
+ module Models
5
+ module V1
6
+ class PaymentListParams < MetronomeSDK::Internal::Type::BaseModel
7
+ extend MetronomeSDK::Internal::Type::RequestParameters::Converter
8
+ include MetronomeSDK::Internal::Type::RequestParameters
9
+
10
+ OrHash =
11
+ T.type_alias do
12
+ T.any(
13
+ MetronomeSDK::V1::PaymentListParams,
14
+ MetronomeSDK::Internal::AnyHash
15
+ )
16
+ end
17
+
18
+ sig { returns(String) }
19
+ attr_accessor :customer_id
20
+
21
+ sig { returns(String) }
22
+ attr_accessor :invoice_id
23
+
24
+ # The maximum number of payments to return. Defaults to 25.
25
+ sig { returns(T.nilable(Integer)) }
26
+ attr_reader :limit
27
+
28
+ sig { params(limit: Integer).void }
29
+ attr_writer :limit
30
+
31
+ # The next page token from a previous response.
32
+ sig { returns(T.nilable(String)) }
33
+ attr_reader :next_page
34
+
35
+ sig { params(next_page: String).void }
36
+ attr_writer :next_page
37
+
38
+ sig do
39
+ returns(
40
+ T.nilable(T::Array[MetronomeSDK::V1::PaymentStatus::OrSymbol])
41
+ )
42
+ end
43
+ attr_reader :statuses
44
+
45
+ sig do
46
+ params(
47
+ statuses: T::Array[MetronomeSDK::V1::PaymentStatus::OrSymbol]
48
+ ).void
49
+ end
50
+ attr_writer :statuses
51
+
52
+ sig do
53
+ params(
54
+ customer_id: String,
55
+ invoice_id: String,
56
+ limit: Integer,
57
+ next_page: String,
58
+ statuses: T::Array[MetronomeSDK::V1::PaymentStatus::OrSymbol],
59
+ request_options: MetronomeSDK::RequestOptions::OrHash
60
+ ).returns(T.attached_class)
61
+ end
62
+ def self.new(
63
+ customer_id:,
64
+ invoice_id:,
65
+ # The maximum number of payments to return. Defaults to 25.
66
+ limit: nil,
67
+ # The next page token from a previous response.
68
+ next_page: nil,
69
+ statuses: nil,
70
+ request_options: {}
71
+ )
72
+ end
73
+
74
+ sig do
75
+ override.returns(
76
+ {
77
+ customer_id: String,
78
+ invoice_id: String,
79
+ limit: Integer,
80
+ next_page: String,
81
+ statuses: T::Array[MetronomeSDK::V1::PaymentStatus::OrSymbol],
82
+ request_options: MetronomeSDK::RequestOptions
83
+ }
84
+ )
85
+ end
86
+ def to_hash
87
+ end
88
+ end
89
+ end
90
+ end
91
+ end
@@ -0,0 +1,33 @@
1
+ # typed: strong
2
+
3
+ module MetronomeSDK
4
+ module Models
5
+ module V1
6
+ module PaymentStatus
7
+ extend MetronomeSDK::Internal::Type::Enum
8
+
9
+ TaggedSymbol =
10
+ T.type_alias { T.all(Symbol, MetronomeSDK::V1::PaymentStatus) }
11
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
12
+
13
+ PENDING = T.let(:pending, MetronomeSDK::V1::PaymentStatus::TaggedSymbol)
14
+ REQUIRES_INTERVENTION =
15
+ T.let(
16
+ :requires_intervention,
17
+ MetronomeSDK::V1::PaymentStatus::TaggedSymbol
18
+ )
19
+ PAID = T.let(:paid, MetronomeSDK::V1::PaymentStatus::TaggedSymbol)
20
+ CANCELED =
21
+ T.let(:canceled, MetronomeSDK::V1::PaymentStatus::TaggedSymbol)
22
+
23
+ sig do
24
+ override.returns(
25
+ T::Array[MetronomeSDK::V1::PaymentStatus::TaggedSymbol]
26
+ )
27
+ end
28
+ def self.values
29
+ end
30
+ end
31
+ end
32
+ end
33
+ end