metronome-sdk 0.1.0.pre.alpha.1

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 (770) hide show
  1. checksums.yaml +7 -0
  2. data/.ignore +2 -0
  3. data/CHANGELOG.md +290 -0
  4. data/README.md +258 -0
  5. data/SECURITY.md +27 -0
  6. data/lib/metronome_sdk/client.rb +78 -0
  7. data/lib/metronome_sdk/errors.rb +192 -0
  8. data/lib/metronome_sdk/file_part.rb +55 -0
  9. data/lib/metronome_sdk/internal/cursor_page.rb +86 -0
  10. data/lib/metronome_sdk/internal/transport/base_client.rb +486 -0
  11. data/lib/metronome_sdk/internal/transport/pooled_net_requester.rb +193 -0
  12. data/lib/metronome_sdk/internal/type/array_of.rb +154 -0
  13. data/lib/metronome_sdk/internal/type/base_model.rb +443 -0
  14. data/lib/metronome_sdk/internal/type/base_page.rb +55 -0
  15. data/lib/metronome_sdk/internal/type/boolean.rb +63 -0
  16. data/lib/metronome_sdk/internal/type/converter.rb +274 -0
  17. data/lib/metronome_sdk/internal/type/enum.rb +107 -0
  18. data/lib/metronome_sdk/internal/type/file_input.rb +96 -0
  19. data/lib/metronome_sdk/internal/type/hash_of.rb +174 -0
  20. data/lib/metronome_sdk/internal/type/request_parameters.rb +48 -0
  21. data/lib/metronome_sdk/internal/type/union.rb +220 -0
  22. data/lib/metronome_sdk/internal/type/unknown.rb +67 -0
  23. data/lib/metronome_sdk/internal/util.rb +790 -0
  24. data/lib/metronome_sdk/internal.rb +11 -0
  25. data/lib/metronome_sdk/models/base_usage_filter.rb +27 -0
  26. data/lib/metronome_sdk/models/commit.rb +848 -0
  27. data/lib/metronome_sdk/models/contract_without_amendments.rb +1431 -0
  28. data/lib/metronome_sdk/models/credit.rb +476 -0
  29. data/lib/metronome_sdk/models/credit_type_data.rb +21 -0
  30. data/lib/metronome_sdk/models/discount.rb +68 -0
  31. data/lib/metronome_sdk/models/event_type_filter.rb +35 -0
  32. data/lib/metronome_sdk/models/id.rb +15 -0
  33. data/lib/metronome_sdk/models/override.rb +368 -0
  34. data/lib/metronome_sdk/models/pro_service.rb +75 -0
  35. data/lib/metronome_sdk/models/property_filter.rb +55 -0
  36. data/lib/metronome_sdk/models/rate.rb +106 -0
  37. data/lib/metronome_sdk/models/schedule_duration.rb +50 -0
  38. data/lib/metronome_sdk/models/schedule_point_in_time.rb +62 -0
  39. data/lib/metronome_sdk/models/scheduled_charge.rb +76 -0
  40. data/lib/metronome_sdk/models/tier.rb +21 -0
  41. data/lib/metronome_sdk/models/v1/alert_archive_params.rb +32 -0
  42. data/lib/metronome_sdk/models/v1/alert_archive_response.rb +18 -0
  43. data/lib/metronome_sdk/models/v1/alert_create_params.rb +224 -0
  44. data/lib/metronome_sdk/models/v1/alert_create_response.rb +18 -0
  45. data/lib/metronome_sdk/models/v1/audit_log_list_params.rb +92 -0
  46. data/lib/metronome_sdk/models/v1/audit_log_list_response.rb +124 -0
  47. data/lib/metronome_sdk/models/v1/billable_metric_archive_params.rb +16 -0
  48. data/lib/metronome_sdk/models/v1/billable_metric_archive_response.rb +18 -0
  49. data/lib/metronome_sdk/models/v1/billable_metric_create_params.rb +111 -0
  50. data/lib/metronome_sdk/models/v1/billable_metric_create_response.rb +18 -0
  51. data/lib/metronome_sdk/models/v1/billable_metric_list_params.rb +40 -0
  52. data/lib/metronome_sdk/models/v1/billable_metric_list_response.rb +122 -0
  53. data/lib/metronome_sdk/models/v1/billable_metric_retrieve_params.rb +22 -0
  54. data/lib/metronome_sdk/models/v1/billable_metric_retrieve_response.rb +134 -0
  55. data/lib/metronome_sdk/models/v1/contract_add_manual_balance_entry_params.rb +79 -0
  56. data/lib/metronome_sdk/models/v1/contract_amend_params.rb +1778 -0
  57. data/lib/metronome_sdk/models/v1/contract_amend_response.rb +18 -0
  58. data/lib/metronome_sdk/models/v1/contract_archive_params.rb +45 -0
  59. data/lib/metronome_sdk/models/v1/contract_archive_response.rb +18 -0
  60. data/lib/metronome_sdk/models/v1/contract_create_historical_invoices_params.rb +203 -0
  61. data/lib/metronome_sdk/models/v1/contract_create_historical_invoices_response.rb +18 -0
  62. data/lib/metronome_sdk/models/v1/contract_create_params.rb +3076 -0
  63. data/lib/metronome_sdk/models/v1/contract_create_response.rb +18 -0
  64. data/lib/metronome_sdk/models/v1/contract_list_balances_params.rb +101 -0
  65. data/lib/metronome_sdk/models/v1/contract_list_balances_response.rb +36 -0
  66. data/lib/metronome_sdk/models/v1/contract_list_params.rb +76 -0
  67. data/lib/metronome_sdk/models/v1/contract_list_response.rb +388 -0
  68. data/lib/metronome_sdk/models/v1/contract_retrieve_params.rb +53 -0
  69. data/lib/metronome_sdk/models/v1/contract_retrieve_rate_schedule_params.rb +117 -0
  70. data/lib/metronome_sdk/models/v1/contract_retrieve_rate_schedule_response.rb +165 -0
  71. data/lib/metronome_sdk/models/v1/contract_retrieve_response.rb +388 -0
  72. data/lib/metronome_sdk/models/v1/contract_schedule_pro_services_invoice_params.rb +139 -0
  73. data/lib/metronome_sdk/models/v1/contract_schedule_pro_services_invoice_response.rb +18 -0
  74. data/lib/metronome_sdk/models/v1/contract_set_usage_filter_params.rb +46 -0
  75. data/lib/metronome_sdk/models/v1/contract_update_end_date_params.rb +57 -0
  76. data/lib/metronome_sdk/models/v1/contract_update_end_date_response.rb +18 -0
  77. data/lib/metronome_sdk/models/v1/contracts/named_schedule_retrieve_params.rb +48 -0
  78. data/lib/metronome_sdk/models/v1/contracts/named_schedule_retrieve_response.rb +43 -0
  79. data/lib/metronome_sdk/models/v1/contracts/named_schedule_update_params.rb +62 -0
  80. data/lib/metronome_sdk/models/v1/contracts/product_archive_params.rb +26 -0
  81. data/lib/metronome_sdk/models/v1/contracts/product_archive_response.rb +20 -0
  82. data/lib/metronome_sdk/models/v1/contracts/product_create_params.rb +167 -0
  83. data/lib/metronome_sdk/models/v1/contracts/product_create_response.rb +20 -0
  84. data/lib/metronome_sdk/models/v1/contracts/product_list_item_state.rb +152 -0
  85. data/lib/metronome_sdk/models/v1/contracts/product_list_params.rb +55 -0
  86. data/lib/metronome_sdk/models/v1/contracts/product_list_response.rb +214 -0
  87. data/lib/metronome_sdk/models/v1/contracts/product_retrieve_params.rb +18 -0
  88. data/lib/metronome_sdk/models/v1/contracts/product_retrieve_response.rb +225 -0
  89. data/lib/metronome_sdk/models/v1/contracts/product_update_params.rb +176 -0
  90. data/lib/metronome_sdk/models/v1/contracts/product_update_response.rb +20 -0
  91. data/lib/metronome_sdk/models/v1/contracts/quantity_conversion.rb +57 -0
  92. data/lib/metronome_sdk/models/v1/contracts/quantity_rounding.rb +43 -0
  93. data/lib/metronome_sdk/models/v1/contracts/rate_card_create_params.rb +112 -0
  94. data/lib/metronome_sdk/models/v1/contracts/rate_card_create_response.rb +20 -0
  95. data/lib/metronome_sdk/models/v1/contracts/rate_card_list_params.rb +41 -0
  96. data/lib/metronome_sdk/models/v1/contracts/rate_card_list_response.rb +108 -0
  97. data/lib/metronome_sdk/models/v1/contracts/rate_card_retrieve_params.rb +18 -0
  98. data/lib/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_params.rb +110 -0
  99. data/lib/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_response.rb +153 -0
  100. data/lib/metronome_sdk/models/v1/contracts/rate_card_retrieve_response.rb +119 -0
  101. data/lib/metronome_sdk/models/v1/contracts/rate_card_update_params.rb +78 -0
  102. data/lib/metronome_sdk/models/v1/contracts/rate_card_update_response.rb +20 -0
  103. data/lib/metronome_sdk/models/v1/contracts/rate_cards/named_schedule_retrieve_params.rb +58 -0
  104. data/lib/metronome_sdk/models/v1/contracts/rate_cards/named_schedule_retrieve_response.rb +45 -0
  105. data/lib/metronome_sdk/models/v1/contracts/rate_cards/named_schedule_update_params.rb +72 -0
  106. data/lib/metronome_sdk/models/v1/contracts/rate_cards/product_order_set_params.rb +35 -0
  107. data/lib/metronome_sdk/models/v1/contracts/rate_cards/product_order_set_response.rb +22 -0
  108. data/lib/metronome_sdk/models/v1/contracts/rate_cards/product_order_update_params.rb +55 -0
  109. data/lib/metronome_sdk/models/v1/contracts/rate_cards/product_order_update_response.rb +22 -0
  110. data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_params.rb +229 -0
  111. data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_response.rb +23 -0
  112. data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_add_params.rb +216 -0
  113. data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_add_response.rb +183 -0
  114. data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_list_params.rb +112 -0
  115. data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_list_response.rb +137 -0
  116. data/lib/metronome_sdk/models/v1/credit_grant_create_params.rb +233 -0
  117. data/lib/metronome_sdk/models/v1/credit_grant_create_response.rb +18 -0
  118. data/lib/metronome_sdk/models/v1/credit_grant_edit_params.rb +48 -0
  119. data/lib/metronome_sdk/models/v1/credit_grant_edit_response.rb +18 -0
  120. data/lib/metronome_sdk/models/v1/credit_grant_list_entries_params.rb +69 -0
  121. data/lib/metronome_sdk/models/v1/credit_grant_list_entries_response.rb +164 -0
  122. data/lib/metronome_sdk/models/v1/credit_grant_list_params.rb +81 -0
  123. data/lib/metronome_sdk/models/v1/credit_grant_list_response.rb +252 -0
  124. data/lib/metronome_sdk/models/v1/credit_grant_void_params.rb +39 -0
  125. data/lib/metronome_sdk/models/v1/credit_grant_void_response.rb +18 -0
  126. data/lib/metronome_sdk/models/v1/credit_ledger_entry.rb +71 -0
  127. data/lib/metronome_sdk/models/v1/custom_field_add_key_params.rb +60 -0
  128. data/lib/metronome_sdk/models/v1/custom_field_delete_values_params.rb +60 -0
  129. data/lib/metronome_sdk/models/v1/custom_field_list_keys_params.rb +59 -0
  130. data/lib/metronome_sdk/models/v1/custom_field_list_keys_response.rb +74 -0
  131. data/lib/metronome_sdk/models/v1/custom_field_remove_key_params.rb +54 -0
  132. data/lib/metronome_sdk/models/v1/custom_field_set_values_params.rb +60 -0
  133. data/lib/metronome_sdk/models/v1/customer.rb +55 -0
  134. data/lib/metronome_sdk/models/v1/customer_archive_params.rb +16 -0
  135. data/lib/metronome_sdk/models/v1/customer_archive_response.rb +18 -0
  136. data/lib/metronome_sdk/models/v1/customer_create_params.rb +259 -0
  137. data/lib/metronome_sdk/models/v1/customer_create_response.rb +18 -0
  138. data/lib/metronome_sdk/models/v1/customer_detail.rb +131 -0
  139. data/lib/metronome_sdk/models/v1/customer_list_billable_metrics_params.rb +60 -0
  140. data/lib/metronome_sdk/models/v1/customer_list_billable_metrics_response.rb +153 -0
  141. data/lib/metronome_sdk/models/v1/customer_list_costs_params.rb +55 -0
  142. data/lib/metronome_sdk/models/v1/customer_list_costs_response.rb +82 -0
  143. data/lib/metronome_sdk/models/v1/customer_list_params.rb +71 -0
  144. data/lib/metronome_sdk/models/v1/customer_retrieve_params.rb +22 -0
  145. data/lib/metronome_sdk/models/v1/customer_retrieve_response.rb +18 -0
  146. data/lib/metronome_sdk/models/v1/customer_set_ingest_aliases_params.rb +28 -0
  147. data/lib/metronome_sdk/models/v1/customer_set_name_params.rb +36 -0
  148. data/lib/metronome_sdk/models/v1/customer_set_name_response.rb +18 -0
  149. data/lib/metronome_sdk/models/v1/customer_update_config_params.rb +44 -0
  150. data/lib/metronome_sdk/models/v1/customers/alert_list_params.rb +59 -0
  151. data/lib/metronome_sdk/models/v1/customers/alert_list_response.rb +27 -0
  152. data/lib/metronome_sdk/models/v1/customers/alert_reset_params.rb +34 -0
  153. data/lib/metronome_sdk/models/v1/customers/alert_retrieve_params.rb +34 -0
  154. data/lib/metronome_sdk/models/v1/customers/alert_retrieve_response.rb +20 -0
  155. data/lib/metronome_sdk/models/v1/customers/billing_config_create_params.rb +129 -0
  156. data/lib/metronome_sdk/models/v1/customers/billing_config_delete_params.rb +47 -0
  157. data/lib/metronome_sdk/models/v1/customers/billing_config_retrieve_params.rb +47 -0
  158. data/lib/metronome_sdk/models/v1/customers/billing_config_retrieve_response.rb +164 -0
  159. data/lib/metronome_sdk/models/v1/customers/commit_create_params.rb +436 -0
  160. data/lib/metronome_sdk/models/v1/customers/commit_create_response.rb +20 -0
  161. data/lib/metronome_sdk/models/v1/customers/commit_list_params.rb +103 -0
  162. data/lib/metronome_sdk/models/v1/customers/commit_list_response.rb +26 -0
  163. data/lib/metronome_sdk/models/v1/customers/commit_update_end_date_params.rb +59 -0
  164. data/lib/metronome_sdk/models/v1/customers/commit_update_end_date_response.rb +20 -0
  165. data/lib/metronome_sdk/models/v1/customers/credit_create_params.rb +198 -0
  166. data/lib/metronome_sdk/models/v1/customers/credit_create_response.rb +20 -0
  167. data/lib/metronome_sdk/models/v1/customers/credit_list_params.rb +103 -0
  168. data/lib/metronome_sdk/models/v1/customers/credit_list_response.rb +26 -0
  169. data/lib/metronome_sdk/models/v1/customers/credit_update_end_date_params.rb +48 -0
  170. data/lib/metronome_sdk/models/v1/customers/credit_update_end_date_response.rb +20 -0
  171. data/lib/metronome_sdk/models/v1/customers/customer_alert.rb +269 -0
  172. data/lib/metronome_sdk/models/v1/customers/invoice.rb +1074 -0
  173. data/lib/metronome_sdk/models/v1/customers/invoice_add_charge_params.rb +79 -0
  174. data/lib/metronome_sdk/models/v1/customers/invoice_add_charge_response.rb +14 -0
  175. data/lib/metronome_sdk/models/v1/customers/invoice_list_breakdowns_params.rb +135 -0
  176. data/lib/metronome_sdk/models/v1/customers/invoice_list_breakdowns_response.rb +26 -0
  177. data/lib/metronome_sdk/models/v1/customers/invoice_list_params.rb +110 -0
  178. data/lib/metronome_sdk/models/v1/customers/invoice_retrieve_params.rb +40 -0
  179. data/lib/metronome_sdk/models/v1/customers/invoice_retrieve_response.rb +20 -0
  180. data/lib/metronome_sdk/models/v1/customers/named_schedule_retrieve_params.rb +48 -0
  181. data/lib/metronome_sdk/models/v1/customers/named_schedule_retrieve_response.rb +43 -0
  182. data/lib/metronome_sdk/models/v1/customers/named_schedule_update_params.rb +62 -0
  183. data/lib/metronome_sdk/models/v1/customers/plan_add_params.rb +245 -0
  184. data/lib/metronome_sdk/models/v1/customers/plan_add_response.rb +20 -0
  185. data/lib/metronome_sdk/models/v1/customers/plan_end_params.rb +66 -0
  186. data/lib/metronome_sdk/models/v1/customers/plan_end_response.rb +14 -0
  187. data/lib/metronome_sdk/models/v1/customers/plan_list_params.rb +41 -0
  188. data/lib/metronome_sdk/models/v1/customers/plan_list_price_adjustments_params.rb +48 -0
  189. data/lib/metronome_sdk/models/v1/customers/plan_list_price_adjustments_response.rb +102 -0
  190. data/lib/metronome_sdk/models/v1/customers/plan_list_response.rb +118 -0
  191. data/lib/metronome_sdk/models/v1/dashboard_get_embeddable_url_params.rb +173 -0
  192. data/lib/metronome_sdk/models/v1/dashboard_get_embeddable_url_response.rb +29 -0
  193. data/lib/metronome_sdk/models/v1/invoice_regenerate_params.rb +24 -0
  194. data/lib/metronome_sdk/models/v1/invoice_regenerate_response.rb +30 -0
  195. data/lib/metronome_sdk/models/v1/invoice_void_params.rb +24 -0
  196. data/lib/metronome_sdk/models/v1/invoice_void_response.rb +29 -0
  197. data/lib/metronome_sdk/models/v1/plan_detail.rb +200 -0
  198. data/lib/metronome_sdk/models/v1/plan_get_details_params.rb +22 -0
  199. data/lib/metronome_sdk/models/v1/plan_get_details_response.rb +18 -0
  200. data/lib/metronome_sdk/models/v1/plan_list_charges_params.rb +39 -0
  201. data/lib/metronome_sdk/models/v1/plan_list_charges_response.rb +202 -0
  202. data/lib/metronome_sdk/models/v1/plan_list_customers_params.rb +79 -0
  203. data/lib/metronome_sdk/models/v1/plan_list_customers_response.rb +72 -0
  204. data/lib/metronome_sdk/models/v1/plan_list_params.rb +32 -0
  205. data/lib/metronome_sdk/models/v1/plan_list_response.rb +36 -0
  206. data/lib/metronome_sdk/models/v1/pricing_unit_list_params.rb +32 -0
  207. data/lib/metronome_sdk/models/v1/pricing_unit_list_response.rb +30 -0
  208. data/lib/metronome_sdk/models/v1/rollover_amount_max_amount.rb +38 -0
  209. data/lib/metronome_sdk/models/v1/rollover_amount_max_percentage.rb +38 -0
  210. data/lib/metronome_sdk/models/v1/service_list_params.rb +16 -0
  211. data/lib/metronome_sdk/models/v1/service_list_response.rb +52 -0
  212. data/lib/metronome_sdk/models/v1/usage_ingest_params.rb +62 -0
  213. data/lib/metronome_sdk/models/v1/usage_list_params.rb +129 -0
  214. data/lib/metronome_sdk/models/v1/usage_list_response.rb +83 -0
  215. data/lib/metronome_sdk/models/v1/usage_list_with_groups_params.rb +130 -0
  216. data/lib/metronome_sdk/models/v1/usage_list_with_groups_response.rb +42 -0
  217. data/lib/metronome_sdk/models/v2/contract_edit_commit_params.rb +266 -0
  218. data/lib/metronome_sdk/models/v2/contract_edit_commit_response.rb +18 -0
  219. data/lib/metronome_sdk/models/v2/contract_edit_credit_params.rb +154 -0
  220. data/lib/metronome_sdk/models/v2/contract_edit_credit_response.rb +18 -0
  221. data/lib/metronome_sdk/models/v2/contract_edit_params.rb +3281 -0
  222. data/lib/metronome_sdk/models/v2/contract_edit_response.rb +18 -0
  223. data/lib/metronome_sdk/models/v2/contract_get_edit_history_params.rb +28 -0
  224. data/lib/metronome_sdk/models/v2/contract_get_edit_history_response.rb +2394 -0
  225. data/lib/metronome_sdk/models/v2/contract_list_params.rb +74 -0
  226. data/lib/metronome_sdk/models/v2/contract_list_response.rb +3044 -0
  227. data/lib/metronome_sdk/models/v2/contract_retrieve_params.rb +63 -0
  228. data/lib/metronome_sdk/models/v2/contract_retrieve_response.rb +3051 -0
  229. data/lib/metronome_sdk/request_options.rb +73 -0
  230. data/lib/metronome_sdk/resources/v1/alerts.rb +99 -0
  231. data/lib/metronome_sdk/resources/v1/audit_logs.rb +60 -0
  232. data/lib/metronome_sdk/resources/v1/billable_metrics.rb +131 -0
  233. data/lib/metronome_sdk/resources/v1/contracts/named_schedules.rb +86 -0
  234. data/lib/metronome_sdk/resources/v1/contracts/products.rb +212 -0
  235. data/lib/metronome_sdk/resources/v1/contracts/rate_cards/named_schedules.rb +94 -0
  236. data/lib/metronome_sdk/resources/v1/contracts/rate_cards/product_orders.rb +70 -0
  237. data/lib/metronome_sdk/resources/v1/contracts/rate_cards/rates.rb +141 -0
  238. data/lib/metronome_sdk/resources/v1/contracts/rate_cards.rb +192 -0
  239. data/lib/metronome_sdk/resources/v1/contracts.rb +506 -0
  240. data/lib/metronome_sdk/resources/v1/credit_grants.rb +211 -0
  241. data/lib/metronome_sdk/resources/v1/custom_fields.rb +140 -0
  242. data/lib/metronome_sdk/resources/v1/customers/alerts.rb +99 -0
  243. data/lib/metronome_sdk/resources/v1/customers/billing_config.rb +126 -0
  244. data/lib/metronome_sdk/resources/v1/customers/commits.rb +165 -0
  245. data/lib/metronome_sdk/resources/v1/customers/credits.rb +151 -0
  246. data/lib/metronome_sdk/resources/v1/customers/invoices.rb +208 -0
  247. data/lib/metronome_sdk/resources/v1/customers/named_schedules.rb +86 -0
  248. data/lib/metronome_sdk/resources/v1/customers/plans.rb +184 -0
  249. data/lib/metronome_sdk/resources/v1/customers.rb +336 -0
  250. data/lib/metronome_sdk/resources/v1/dashboards.rb +48 -0
  251. data/lib/metronome_sdk/resources/v1/invoices.rb +60 -0
  252. data/lib/metronome_sdk/resources/v1/plans.rb +133 -0
  253. data/lib/metronome_sdk/resources/v1/pricing_units.rb +41 -0
  254. data/lib/metronome_sdk/resources/v1/services.rb +37 -0
  255. data/lib/metronome_sdk/resources/v1/usage.rb +129 -0
  256. data/lib/metronome_sdk/resources/v1.rb +66 -0
  257. data/lib/metronome_sdk/resources/v2/contracts.rb +256 -0
  258. data/lib/metronome_sdk/resources/v2.rb +18 -0
  259. data/lib/metronome_sdk/version.rb +5 -0
  260. data/lib/metronome_sdk.rb +282 -0
  261. data/manifest.yaml +15 -0
  262. data/rbi/metronome_sdk/client.rbi +51 -0
  263. data/rbi/metronome_sdk/errors.rbi +143 -0
  264. data/rbi/metronome_sdk/file_part.rbi +34 -0
  265. data/rbi/metronome_sdk/internal/cursor_page.rbi +21 -0
  266. data/rbi/metronome_sdk/internal/transport/base_client.rbi +213 -0
  267. data/rbi/metronome_sdk/internal/transport/pooled_net_requester.rbi +60 -0
  268. data/rbi/metronome_sdk/internal/type/array_of.rbi +88 -0
  269. data/rbi/metronome_sdk/internal/type/base_model.rbi +220 -0
  270. data/rbi/metronome_sdk/internal/type/base_page.rbi +38 -0
  271. data/rbi/metronome_sdk/internal/type/boolean.rbi +48 -0
  272. data/rbi/metronome_sdk/internal/type/converter.rbi +120 -0
  273. data/rbi/metronome_sdk/internal/type/enum.rbi +66 -0
  274. data/rbi/metronome_sdk/internal/type/file_input.rbi +50 -0
  275. data/rbi/metronome_sdk/internal/type/hash_of.rbi +88 -0
  276. data/rbi/metronome_sdk/internal/type/request_parameters.rbi +21 -0
  277. data/rbi/metronome_sdk/internal/type/union.rbi +80 -0
  278. data/rbi/metronome_sdk/internal/type/unknown.rbi +40 -0
  279. data/rbi/metronome_sdk/internal/util.rbi +302 -0
  280. data/rbi/metronome_sdk/internal.rbi +11 -0
  281. data/rbi/metronome_sdk/models/base_usage_filter.rbi +27 -0
  282. data/rbi/metronome_sdk/models/commit.rbi +1283 -0
  283. data/rbi/metronome_sdk/models/contract_without_amendments.rbi +2407 -0
  284. data/rbi/metronome_sdk/models/credit.rbi +697 -0
  285. data/rbi/metronome_sdk/models/credit_type_data.rbi +19 -0
  286. data/rbi/metronome_sdk/models/discount.rbi +90 -0
  287. data/rbi/metronome_sdk/models/event_type_filter.rbi +40 -0
  288. data/rbi/metronome_sdk/models/id.rbi +16 -0
  289. data/rbi/metronome_sdk/models/override.rbi +503 -0
  290. data/rbi/metronome_sdk/models/pro_service.rbi +92 -0
  291. data/rbi/metronome_sdk/models/property_filter.rbi +75 -0
  292. data/rbi/metronome_sdk/models/rate.rbi +143 -0
  293. data/rbi/metronome_sdk/models/schedule_duration.rbi +58 -0
  294. data/rbi/metronome_sdk/models/schedule_point_in_time.rbi +92 -0
  295. data/rbi/metronome_sdk/models/scheduled_charge.rbi +104 -0
  296. data/rbi/metronome_sdk/models/tier.rbi +22 -0
  297. data/rbi/metronome_sdk/models/v1/alert_archive_params.rbi +48 -0
  298. data/rbi/metronome_sdk/models/v1/alert_archive_response.rbi +21 -0
  299. data/rbi/metronome_sdk/models/v1/alert_create_params.rbi +342 -0
  300. data/rbi/metronome_sdk/models/v1/alert_create_response.rbi +21 -0
  301. data/rbi/metronome_sdk/models/v1/audit_log_list_params.rbi +128 -0
  302. data/rbi/metronome_sdk/models/v1/audit_log_list_response.rbi +167 -0
  303. data/rbi/metronome_sdk/models/v1/billable_metric_archive_params.rbi +21 -0
  304. data/rbi/metronome_sdk/models/v1/billable_metric_archive_response.rbi +21 -0
  305. data/rbi/metronome_sdk/models/v1/billable_metric_create_params.rbi +165 -0
  306. data/rbi/metronome_sdk/models/v1/billable_metric_create_response.rbi +21 -0
  307. data/rbi/metronome_sdk/models/v1/billable_metric_list_params.rbi +64 -0
  308. data/rbi/metronome_sdk/models/v1/billable_metric_list_response.rbi +174 -0
  309. data/rbi/metronome_sdk/models/v1/billable_metric_retrieve_params.rbi +27 -0
  310. data/rbi/metronome_sdk/models/v1/billable_metric_retrieve_response.rbi +217 -0
  311. data/rbi/metronome_sdk/models/v1/contract_add_manual_balance_entry_params.rbi +95 -0
  312. data/rbi/metronome_sdk/models/v1/contract_amend_params.rbi +2903 -0
  313. data/rbi/metronome_sdk/models/v1/contract_amend_response.rbi +21 -0
  314. data/rbi/metronome_sdk/models/v1/contract_archive_params.rbi +57 -0
  315. data/rbi/metronome_sdk/models/v1/contract_archive_response.rbi +21 -0
  316. data/rbi/metronome_sdk/models/v1/contract_create_historical_invoices_params.rbi +346 -0
  317. data/rbi/metronome_sdk/models/v1/contract_create_historical_invoices_response.rbi +23 -0
  318. data/rbi/metronome_sdk/models/v1/contract_create_params.rbi +5220 -0
  319. data/rbi/metronome_sdk/models/v1/contract_create_response.rbi +21 -0
  320. data/rbi/metronome_sdk/models/v1/contract_list_balances_params.rbi +138 -0
  321. data/rbi/metronome_sdk/models/v1/contract_list_balances_response.rbi +42 -0
  322. data/rbi/metronome_sdk/models/v1/contract_list_params.rbi +104 -0
  323. data/rbi/metronome_sdk/models/v1/contract_list_response.rbi +670 -0
  324. data/rbi/metronome_sdk/models/v1/contract_retrieve_params.rbi +69 -0
  325. data/rbi/metronome_sdk/models/v1/contract_retrieve_rate_schedule_params.rbi +178 -0
  326. data/rbi/metronome_sdk/models/v1/contract_retrieve_rate_schedule_response.rbi +254 -0
  327. data/rbi/metronome_sdk/models/v1/contract_retrieve_response.rbi +683 -0
  328. data/rbi/metronome_sdk/models/v1/contract_schedule_pro_services_invoice_params.rbi +192 -0
  329. data/rbi/metronome_sdk/models/v1/contract_schedule_pro_services_invoice_response.rbi +23 -0
  330. data/rbi/metronome_sdk/models/v1/contract_set_usage_filter_params.rbi +63 -0
  331. data/rbi/metronome_sdk/models/v1/contract_update_end_date_params.rbi +77 -0
  332. data/rbi/metronome_sdk/models/v1/contract_update_end_date_response.rbi +21 -0
  333. data/rbi/metronome_sdk/models/v1/contracts/named_schedule_retrieve_params.rbi +62 -0
  334. data/rbi/metronome_sdk/models/v1/contracts/named_schedule_retrieve_response.rbi +55 -0
  335. data/rbi/metronome_sdk/models/v1/contracts/named_schedule_update_params.rbi +74 -0
  336. data/rbi/metronome_sdk/models/v1/contracts/product_archive_params.rbi +33 -0
  337. data/rbi/metronome_sdk/models/v1/contracts/product_archive_response.rbi +23 -0
  338. data/rbi/metronome_sdk/models/v1/contracts/product_create_params.rbi +241 -0
  339. data/rbi/metronome_sdk/models/v1/contracts/product_create_response.rbi +23 -0
  340. data/rbi/metronome_sdk/models/v1/contracts/product_list_item_state.rbi +214 -0
  341. data/rbi/metronome_sdk/models/v1/contracts/product_list_params.rbi +90 -0
  342. data/rbi/metronome_sdk/models/v1/contracts/product_list_response.rbi +307 -0
  343. data/rbi/metronome_sdk/models/v1/contracts/product_retrieve_params.rbi +23 -0
  344. data/rbi/metronome_sdk/models/v1/contracts/product_retrieve_response.rbi +347 -0
  345. data/rbi/metronome_sdk/models/v1/contracts/product_update_params.rbi +248 -0
  346. data/rbi/metronome_sdk/models/v1/contracts/product_update_response.rbi +23 -0
  347. data/rbi/metronome_sdk/models/v1/contracts/quantity_conversion.rbi +80 -0
  348. data/rbi/metronome_sdk/models/v1/contracts/quantity_rounding.rbi +62 -0
  349. data/rbi/metronome_sdk/models/v1/contracts/rate_card_create_params.rbi +161 -0
  350. data/rbi/metronome_sdk/models/v1/contracts/rate_card_create_response.rbi +23 -0
  351. data/rbi/metronome_sdk/models/v1/contracts/rate_card_list_params.rbi +64 -0
  352. data/rbi/metronome_sdk/models/v1/contracts/rate_card_list_response.rbi +174 -0
  353. data/rbi/metronome_sdk/models/v1/contracts/rate_card_retrieve_params.rbi +23 -0
  354. data/rbi/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_params.rbi +171 -0
  355. data/rbi/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_response.rbi +249 -0
  356. data/rbi/metronome_sdk/models/v1/contracts/rate_card_retrieve_response.rbi +216 -0
  357. data/rbi/metronome_sdk/models/v1/contracts/rate_card_update_params.rbi +104 -0
  358. data/rbi/metronome_sdk/models/v1/contracts/rate_card_update_response.rbi +23 -0
  359. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/named_schedule_retrieve_params.rbi +72 -0
  360. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/named_schedule_retrieve_response.rbi +59 -0
  361. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/named_schedule_update_params.rbi +84 -0
  362. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/product_order_set_params.rbi +49 -0
  363. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/product_order_set_response.rbi +25 -0
  364. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/product_order_update_params.rbi +74 -0
  365. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/product_order_update_response.rbi +25 -0
  366. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_params.rbi +376 -0
  367. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_response.rbi +28 -0
  368. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_add_params.rbi +330 -0
  369. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_add_response.rbi +323 -0
  370. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_list_params.rbi +169 -0
  371. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_list_response.rbi +210 -0
  372. data/rbi/metronome_sdk/models/v1/credit_grant_create_params.rbi +316 -0
  373. data/rbi/metronome_sdk/models/v1/credit_grant_create_response.rbi +21 -0
  374. data/rbi/metronome_sdk/models/v1/credit_grant_edit_params.rbi +72 -0
  375. data/rbi/metronome_sdk/models/v1/credit_grant_edit_response.rbi +21 -0
  376. data/rbi/metronome_sdk/models/v1/credit_grant_list_entries_params.rbi +98 -0
  377. data/rbi/metronome_sdk/models/v1/credit_grant_list_entries_response.rbi +229 -0
  378. data/rbi/metronome_sdk/models/v1/credit_grant_list_params.rbi +114 -0
  379. data/rbi/metronome_sdk/models/v1/credit_grant_list_response.rbi +298 -0
  380. data/rbi/metronome_sdk/models/v1/credit_grant_void_params.rbi +59 -0
  381. data/rbi/metronome_sdk/models/v1/credit_grant_void_response.rbi +21 -0
  382. data/rbi/metronome_sdk/models/v1/credit_ledger_entry.rbi +81 -0
  383. data/rbi/metronome_sdk/models/v1/custom_field_add_key_params.rbi +82 -0
  384. data/rbi/metronome_sdk/models/v1/custom_field_delete_values_params.rbi +90 -0
  385. data/rbi/metronome_sdk/models/v1/custom_field_list_keys_params.rbi +91 -0
  386. data/rbi/metronome_sdk/models/v1/custom_field_list_keys_response.rbi +123 -0
  387. data/rbi/metronome_sdk/models/v1/custom_field_remove_key_params.rbi +78 -0
  388. data/rbi/metronome_sdk/models/v1/custom_field_set_values_params.rbi +83 -0
  389. data/rbi/metronome_sdk/models/v1/customer.rbi +68 -0
  390. data/rbi/metronome_sdk/models/v1/customer_archive_params.rbi +21 -0
  391. data/rbi/metronome_sdk/models/v1/customer_archive_response.rbi +21 -0
  392. data/rbi/metronome_sdk/models/v1/customer_create_params.rbi +591 -0
  393. data/rbi/metronome_sdk/models/v1/customer_create_response.rbi +24 -0
  394. data/rbi/metronome_sdk/models/v1/customer_detail.rbi +175 -0
  395. data/rbi/metronome_sdk/models/v1/customer_list_billable_metrics_params.rbi +83 -0
  396. data/rbi/metronome_sdk/models/v1/customer_list_billable_metrics_response.rbi +233 -0
  397. data/rbi/metronome_sdk/models/v1/customer_list_costs_params.rbi +75 -0
  398. data/rbi/metronome_sdk/models/v1/customer_list_costs_response.rbi +132 -0
  399. data/rbi/metronome_sdk/models/v1/customer_list_params.rbi +101 -0
  400. data/rbi/metronome_sdk/models/v1/customer_retrieve_params.rbi +27 -0
  401. data/rbi/metronome_sdk/models/v1/customer_retrieve_response.rbi +24 -0
  402. data/rbi/metronome_sdk/models/v1/customer_set_ingest_aliases_params.rbi +40 -0
  403. data/rbi/metronome_sdk/models/v1/customer_set_name_params.rbi +40 -0
  404. data/rbi/metronome_sdk/models/v1/customer_set_name_response.rbi +24 -0
  405. data/rbi/metronome_sdk/models/v1/customer_update_config_params.rbi +55 -0
  406. data/rbi/metronome_sdk/models/v1/customers/alert_list_params.rbi +90 -0
  407. data/rbi/metronome_sdk/models/v1/customers/alert_list_response.rbi +34 -0
  408. data/rbi/metronome_sdk/models/v1/customers/alert_reset_params.rbi +48 -0
  409. data/rbi/metronome_sdk/models/v1/customers/alert_retrieve_params.rbi +48 -0
  410. data/rbi/metronome_sdk/models/v1/customers/alert_retrieve_response.rbi +29 -0
  411. data/rbi/metronome_sdk/models/v1/customers/billing_config_create_params.rbi +320 -0
  412. data/rbi/metronome_sdk/models/v1/customers/billing_config_delete_params.rbi +99 -0
  413. data/rbi/metronome_sdk/models/v1/customers/billing_config_retrieve_params.rbi +99 -0
  414. data/rbi/metronome_sdk/models/v1/customers/billing_config_retrieve_response.rbi +403 -0
  415. data/rbi/metronome_sdk/models/v1/customers/commit_create_params.rbi +682 -0
  416. data/rbi/metronome_sdk/models/v1/customers/commit_create_response.rbi +23 -0
  417. data/rbi/metronome_sdk/models/v1/customers/commit_list_params.rbi +140 -0
  418. data/rbi/metronome_sdk/models/v1/customers/commit_list_response.rbi +29 -0
  419. data/rbi/metronome_sdk/models/v1/customers/commit_update_end_date_params.rbi +77 -0
  420. data/rbi/metronome_sdk/models/v1/customers/commit_update_end_date_response.rbi +23 -0
  421. data/rbi/metronome_sdk/models/v1/customers/credit_create_params.rbi +278 -0
  422. data/rbi/metronome_sdk/models/v1/customers/credit_create_response.rbi +23 -0
  423. data/rbi/metronome_sdk/models/v1/customers/credit_list_params.rbi +140 -0
  424. data/rbi/metronome_sdk/models/v1/customers/credit_list_response.rbi +29 -0
  425. data/rbi/metronome_sdk/models/v1/customers/credit_update_end_date_params.rbi +59 -0
  426. data/rbi/metronome_sdk/models/v1/customers/credit_update_end_date_response.rbi +23 -0
  427. data/rbi/metronome_sdk/models/v1/customers/customer_alert.rbi +445 -0
  428. data/rbi/metronome_sdk/models/v1/customers/invoice.rbi +1756 -0
  429. data/rbi/metronome_sdk/models/v1/customers/invoice_add_charge_params.rbi +89 -0
  430. data/rbi/metronome_sdk/models/v1/customers/invoice_add_charge_response.rbi +17 -0
  431. data/rbi/metronome_sdk/models/v1/customers/invoice_list_breakdowns_params.rbi +192 -0
  432. data/rbi/metronome_sdk/models/v1/customers/invoice_list_breakdowns_response.rbi +25 -0
  433. data/rbi/metronome_sdk/models/v1/customers/invoice_list_params.rbi +149 -0
  434. data/rbi/metronome_sdk/models/v1/customers/invoice_retrieve_params.rbi +56 -0
  435. data/rbi/metronome_sdk/models/v1/customers/invoice_retrieve_response.rbi +26 -0
  436. data/rbi/metronome_sdk/models/v1/customers/named_schedule_retrieve_params.rbi +62 -0
  437. data/rbi/metronome_sdk/models/v1/customers/named_schedule_retrieve_response.rbi +55 -0
  438. data/rbi/metronome_sdk/models/v1/customers/named_schedule_update_params.rbi +74 -0
  439. data/rbi/metronome_sdk/models/v1/customers/plan_add_params.rbi +384 -0
  440. data/rbi/metronome_sdk/models/v1/customers/plan_add_response.rbi +23 -0
  441. data/rbi/metronome_sdk/models/v1/customers/plan_end_params.rbi +86 -0
  442. data/rbi/metronome_sdk/models/v1/customers/plan_end_response.rbi +17 -0
  443. data/rbi/metronome_sdk/models/v1/customers/plan_list_params.rbi +61 -0
  444. data/rbi/metronome_sdk/models/v1/customers/plan_list_price_adjustments_params.rbi +67 -0
  445. data/rbi/metronome_sdk/models/v1/customers/plan_list_price_adjustments_response.rbi +192 -0
  446. data/rbi/metronome_sdk/models/v1/customers/plan_list_response.rbi +162 -0
  447. data/rbi/metronome_sdk/models/v1/dashboard_get_embeddable_url_params.rbi +375 -0
  448. data/rbi/metronome_sdk/models/v1/dashboard_get_embeddable_url_response.rbi +45 -0
  449. data/rbi/metronome_sdk/models/v1/invoice_regenerate_params.rbi +34 -0
  450. data/rbi/metronome_sdk/models/v1/invoice_regenerate_response.rbi +45 -0
  451. data/rbi/metronome_sdk/models/v1/invoice_void_params.rbi +34 -0
  452. data/rbi/metronome_sdk/models/v1/invoice_void_response.rbi +38 -0
  453. data/rbi/metronome_sdk/models/v1/plan_detail.rbi +303 -0
  454. data/rbi/metronome_sdk/models/v1/plan_get_details_params.rbi +27 -0
  455. data/rbi/metronome_sdk/models/v1/plan_get_details_response.rbi +24 -0
  456. data/rbi/metronome_sdk/models/v1/plan_list_charges_params.rbi +59 -0
  457. data/rbi/metronome_sdk/models/v1/plan_list_charges_response.rbi +284 -0
  458. data/rbi/metronome_sdk/models/v1/plan_list_customers_params.rbi +110 -0
  459. data/rbi/metronome_sdk/models/v1/plan_list_customers_response.rbi +107 -0
  460. data/rbi/metronome_sdk/models/v1/plan_list_params.rbi +46 -0
  461. data/rbi/metronome_sdk/models/v1/plan_list_response.rbi +42 -0
  462. data/rbi/metronome_sdk/models/v1/pricing_unit_list_params.rbi +46 -0
  463. data/rbi/metronome_sdk/models/v1/pricing_unit_list_response.rbi +33 -0
  464. data/rbi/metronome_sdk/models/v1/rollover_amount_max_amount.rbi +43 -0
  465. data/rbi/metronome_sdk/models/v1/rollover_amount_max_percentage.rbi +48 -0
  466. data/rbi/metronome_sdk/models/v1/service_list_params.rbi +21 -0
  467. data/rbi/metronome_sdk/models/v1/service_list_response.rbi +78 -0
  468. data/rbi/metronome_sdk/models/v1/usage_ingest_params.rbi +96 -0
  469. data/rbi/metronome_sdk/models/v1/usage_list_params.rbi +170 -0
  470. data/rbi/metronome_sdk/models/v1/usage_list_response.rbi +97 -0
  471. data/rbi/metronome_sdk/models/v1/usage_list_with_groups_params.rbi +167 -0
  472. data/rbi/metronome_sdk/models/v1/usage_list_with_groups_response.rbi +50 -0
  473. data/rbi/metronome_sdk/models/v2/contract_edit_commit_params.rbi +486 -0
  474. data/rbi/metronome_sdk/models/v2/contract_edit_commit_response.rbi +21 -0
  475. data/rbi/metronome_sdk/models/v2/contract_edit_credit_params.rbi +257 -0
  476. data/rbi/metronome_sdk/models/v2/contract_edit_credit_response.rbi +21 -0
  477. data/rbi/metronome_sdk/models/v2/contract_edit_params.rbi +5637 -0
  478. data/rbi/metronome_sdk/models/v2/contract_edit_response.rbi +21 -0
  479. data/rbi/metronome_sdk/models/v2/contract_get_edit_history_params.rbi +39 -0
  480. data/rbi/metronome_sdk/models/v2/contract_get_edit_history_response.rbi +4446 -0
  481. data/rbi/metronome_sdk/models/v2/contract_list_params.rbi +100 -0
  482. data/rbi/metronome_sdk/models/v2/contract_list_response.rbi +5176 -0
  483. data/rbi/metronome_sdk/models/v2/contract_retrieve_params.rbi +82 -0
  484. data/rbi/metronome_sdk/models/v2/contract_retrieve_response.rbi +5265 -0
  485. data/rbi/metronome_sdk/request_options.rbi +48 -0
  486. data/rbi/metronome_sdk/resources/v1/alerts.rbi +86 -0
  487. data/rbi/metronome_sdk/resources/v1/audit_logs.rbi +50 -0
  488. data/rbi/metronome_sdk/resources/v1/billable_metrics.rbi +87 -0
  489. data/rbi/metronome_sdk/resources/v1/contracts/named_schedules.rbi +61 -0
  490. data/rbi/metronome_sdk/resources/v1/contracts/products.rbi +195 -0
  491. data/rbi/metronome_sdk/resources/v1/contracts/rate_cards/named_schedules.rbi +69 -0
  492. data/rbi/metronome_sdk/resources/v1/contracts/rate_cards/product_orders.rbi +52 -0
  493. data/rbi/metronome_sdk/resources/v1/contracts/rate_cards/rates.rbi +133 -0
  494. data/rbi/metronome_sdk/resources/v1/contracts/rate_cards.rbi +146 -0
  495. data/rbi/metronome_sdk/resources/v1/contracts.rbi +462 -0
  496. data/rbi/metronome_sdk/resources/v1/credit_grants.rbi +181 -0
  497. data/rbi/metronome_sdk/resources/v1/custom_fields.rbi +83 -0
  498. data/rbi/metronome_sdk/resources/v1/customers/alerts.rbi +59 -0
  499. data/rbi/metronome_sdk/resources/v1/customers/billing_config.rbi +75 -0
  500. data/rbi/metronome_sdk/resources/v1/customers/commits.rbi +159 -0
  501. data/rbi/metronome_sdk/resources/v1/customers/credits.rbi +134 -0
  502. data/rbi/metronome_sdk/resources/v1/customers/invoices.rbi +164 -0
  503. data/rbi/metronome_sdk/resources/v1/customers/named_schedules.rbi +61 -0
  504. data/rbi/metronome_sdk/resources/v1/customers/plans.rbi +146 -0
  505. data/rbi/metronome_sdk/resources/v1/customers.rbi +213 -0
  506. data/rbi/metronome_sdk/resources/v1/dashboards.rbi +54 -0
  507. data/rbi/metronome_sdk/resources/v1/invoices.rbi +33 -0
  508. data/rbi/metronome_sdk/resources/v1/plans.rbi +82 -0
  509. data/rbi/metronome_sdk/resources/v1/pricing_units.rbi +25 -0
  510. data/rbi/metronome_sdk/resources/v1/services.rbi +20 -0
  511. data/rbi/metronome_sdk/resources/v1/usage.rbi +104 -0
  512. data/rbi/metronome_sdk/resources/v1.rbi +50 -0
  513. data/rbi/metronome_sdk/resources/v2/contracts.rbi +224 -0
  514. data/rbi/metronome_sdk/resources/v2.rbi +14 -0
  515. data/rbi/metronome_sdk/version.rbi +5 -0
  516. data/sig/metronome_sdk/client.rbs +28 -0
  517. data/sig/metronome_sdk/errors.rbs +101 -0
  518. data/sig/metronome_sdk/file_part.rbs +21 -0
  519. data/sig/metronome_sdk/internal/cursor_page.rbs +13 -0
  520. data/sig/metronome_sdk/internal/transport/base_client.rbs +116 -0
  521. data/sig/metronome_sdk/internal/transport/pooled_net_requester.rbs +41 -0
  522. data/sig/metronome_sdk/internal/type/array_of.rbs +45 -0
  523. data/sig/metronome_sdk/internal/type/base_model.rbs +96 -0
  524. data/sig/metronome_sdk/internal/type/base_page.rbs +24 -0
  525. data/sig/metronome_sdk/internal/type/boolean.rbs +23 -0
  526. data/sig/metronome_sdk/internal/type/converter.rbs +54 -0
  527. data/sig/metronome_sdk/internal/type/enum.rbs +29 -0
  528. data/sig/metronome_sdk/internal/type/file_input.rbs +23 -0
  529. data/sig/metronome_sdk/internal/type/hash_of.rbs +45 -0
  530. data/sig/metronome_sdk/internal/type/request_parameters.rbs +15 -0
  531. data/sig/metronome_sdk/internal/type/union.rbs +49 -0
  532. data/sig/metronome_sdk/internal/type/unknown.rbs +23 -0
  533. data/sig/metronome_sdk/internal/util.rbs +158 -0
  534. data/sig/metronome_sdk/internal.rbs +5 -0
  535. data/sig/metronome_sdk/models/base_usage_filter.rbs +24 -0
  536. data/sig/metronome_sdk/models/commit.rbs +750 -0
  537. data/sig/metronome_sdk/models/contract_without_amendments.rbs +1122 -0
  538. data/sig/metronome_sdk/models/credit.rbs +415 -0
  539. data/sig/metronome_sdk/models/credit_type_data.rbs +15 -0
  540. data/sig/metronome_sdk/models/discount.rbs +56 -0
  541. data/sig/metronome_sdk/models/event_type_filter.rbs +23 -0
  542. data/sig/metronome_sdk/models/id.rbs +13 -0
  543. data/sig/metronome_sdk/models/override.rbs +343 -0
  544. data/sig/metronome_sdk/models/pro_service.rbs +52 -0
  545. data/sig/metronome_sdk/models/property_filter.rbs +36 -0
  546. data/sig/metronome_sdk/models/rate.rbs +86 -0
  547. data/sig/metronome_sdk/models/schedule_duration.rbs +48 -0
  548. data/sig/metronome_sdk/models/schedule_point_in_time.rbs +65 -0
  549. data/sig/metronome_sdk/models/scheduled_charge.rbs +62 -0
  550. data/sig/metronome_sdk/models/tier.rbs +17 -0
  551. data/sig/metronome_sdk/models/v1/alert_archive_params.rbs +28 -0
  552. data/sig/metronome_sdk/models/v1/alert_archive_response.rbs +15 -0
  553. data/sig/metronome_sdk/models/v1/alert_create_params.rbs +181 -0
  554. data/sig/metronome_sdk/models/v1/alert_create_response.rbs +15 -0
  555. data/sig/metronome_sdk/models/v1/audit_log_list_params.rbs +76 -0
  556. data/sig/metronome_sdk/models/v1/audit_log_list_response.rbs +114 -0
  557. data/sig/metronome_sdk/models/v1/billable_metric_archive_params.rbs +17 -0
  558. data/sig/metronome_sdk/models/v1/billable_metric_archive_response.rbs +15 -0
  559. data/sig/metronome_sdk/models/v1/billable_metric_create_params.rbs +87 -0
  560. data/sig/metronome_sdk/models/v1/billable_metric_create_response.rbs +15 -0
  561. data/sig/metronome_sdk/models/v1/billable_metric_list_params.rbs +35 -0
  562. data/sig/metronome_sdk/models/v1/billable_metric_list_response.rbs +92 -0
  563. data/sig/metronome_sdk/models/v1/billable_metric_retrieve_params.rbs +23 -0
  564. data/sig/metronome_sdk/models/v1/billable_metric_retrieve_response.rbs +107 -0
  565. data/sig/metronome_sdk/models/v1/contract_add_manual_balance_entry_params.rbs +53 -0
  566. data/sig/metronome_sdk/models/v1/contract_amend_params.rbs +1398 -0
  567. data/sig/metronome_sdk/models/v1/contract_amend_response.rbs +15 -0
  568. data/sig/metronome_sdk/models/v1/contract_archive_params.rbs +29 -0
  569. data/sig/metronome_sdk/models/v1/contract_archive_response.rbs +15 -0
  570. data/sig/metronome_sdk/models/v1/contract_create_historical_invoices_params.rbs +188 -0
  571. data/sig/metronome_sdk/models/v1/contract_create_historical_invoices_response.rbs +18 -0
  572. data/sig/metronome_sdk/models/v1/contract_create_params.rbs +2400 -0
  573. data/sig/metronome_sdk/models/v1/contract_create_response.rbs +15 -0
  574. data/sig/metronome_sdk/models/v1/contract_list_balances_params.rbs +79 -0
  575. data/sig/metronome_sdk/models/v1/contract_list_balances_response.rbs +32 -0
  576. data/sig/metronome_sdk/models/v1/contract_list_params.rbs +55 -0
  577. data/sig/metronome_sdk/models/v1/contract_list_response.rbs +333 -0
  578. data/sig/metronome_sdk/models/v1/contract_retrieve_params.rbs +41 -0
  579. data/sig/metronome_sdk/models/v1/contract_retrieve_rate_schedule_params.rbs +94 -0
  580. data/sig/metronome_sdk/models/v1/contract_retrieve_rate_schedule_response.rbs +141 -0
  581. data/sig/metronome_sdk/models/v1/contract_retrieve_response.rbs +333 -0
  582. data/sig/metronome_sdk/models/v1/contract_schedule_pro_services_invoice_params.rbs +106 -0
  583. data/sig/metronome_sdk/models/v1/contract_schedule_pro_services_invoice_response.rbs +18 -0
  584. data/sig/metronome_sdk/models/v1/contract_set_usage_filter_params.rbs +41 -0
  585. data/sig/metronome_sdk/models/v1/contract_update_end_date_params.rbs +41 -0
  586. data/sig/metronome_sdk/models/v1/contract_update_end_date_response.rbs +16 -0
  587. data/sig/metronome_sdk/models/v1/contracts/named_schedule_retrieve_params.rbs +33 -0
  588. data/sig/metronome_sdk/models/v1/contracts/named_schedule_retrieve_response.rbs +42 -0
  589. data/sig/metronome_sdk/models/v1/contracts/named_schedule_update_params.rbs +45 -0
  590. data/sig/metronome_sdk/models/v1/contracts/product_archive_params.rbs +25 -0
  591. data/sig/metronome_sdk/models/v1/contracts/product_archive_response.rbs +17 -0
  592. data/sig/metronome_sdk/models/v1/contracts/product_create_params.rbs +120 -0
  593. data/sig/metronome_sdk/models/v1/contracts/product_create_response.rbs +17 -0
  594. data/sig/metronome_sdk/models/v1/contracts/product_list_item_state.rbs +104 -0
  595. data/sig/metronome_sdk/models/v1/contracts/product_list_params.rbs +55 -0
  596. data/sig/metronome_sdk/models/v1/contracts/product_list_response.rbs +162 -0
  597. data/sig/metronome_sdk/models/v1/contracts/product_retrieve_params.rbs +19 -0
  598. data/sig/metronome_sdk/models/v1/contracts/product_retrieve_response.rbs +179 -0
  599. data/sig/metronome_sdk/models/v1/contracts/product_update_params.rbs +105 -0
  600. data/sig/metronome_sdk/models/v1/contracts/product_update_response.rbs +17 -0
  601. data/sig/metronome_sdk/models/v1/contracts/quantity_conversion.rbs +43 -0
  602. data/sig/metronome_sdk/models/v1/contracts/quantity_rounding.rbs +38 -0
  603. data/sig/metronome_sdk/models/v1/contracts/rate_card_create_params.rbs +99 -0
  604. data/sig/metronome_sdk/models/v1/contracts/rate_card_create_response.rbs +17 -0
  605. data/sig/metronome_sdk/models/v1/contracts/rate_card_list_params.rbs +37 -0
  606. data/sig/metronome_sdk/models/v1/contracts/rate_card_list_response.rbs +111 -0
  607. data/sig/metronome_sdk/models/v1/contracts/rate_card_retrieve_params.rbs +19 -0
  608. data/sig/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_params.rbs +90 -0
  609. data/sig/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_response.rbs +131 -0
  610. data/sig/metronome_sdk/models/v1/contracts/rate_card_retrieve_response.rbs +129 -0
  611. data/sig/metronome_sdk/models/v1/contracts/rate_card_update_params.rbs +69 -0
  612. data/sig/metronome_sdk/models/v1/contracts/rate_card_update_response.rbs +17 -0
  613. data/sig/metronome_sdk/models/v1/contracts/rate_cards/named_schedule_retrieve_params.rbs +43 -0
  614. data/sig/metronome_sdk/models/v1/contracts/rate_cards/named_schedule_retrieve_response.rbs +44 -0
  615. data/sig/metronome_sdk/models/v1/contracts/rate_cards/named_schedule_update_params.rbs +51 -0
  616. data/sig/metronome_sdk/models/v1/contracts/rate_cards/product_order_set_params.rbs +30 -0
  617. data/sig/metronome_sdk/models/v1/contracts/rate_cards/product_order_set_response.rbs +19 -0
  618. data/sig/metronome_sdk/models/v1/contracts/rate_cards/product_order_update_params.rbs +45 -0
  619. data/sig/metronome_sdk/models/v1/contracts/rate_cards/product_order_update_response.rbs +20 -0
  620. data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_params.rbs +185 -0
  621. data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_response.rbs +19 -0
  622. data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_add_params.rbs +170 -0
  623. data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_add_response.rbs +160 -0
  624. data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_list_params.rbs +92 -0
  625. data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_list_response.rbs +114 -0
  626. data/sig/metronome_sdk/models/v1/credit_grant_create_params.rbs +152 -0
  627. data/sig/metronome_sdk/models/v1/credit_grant_create_response.rbs +15 -0
  628. data/sig/metronome_sdk/models/v1/credit_grant_edit_params.rbs +43 -0
  629. data/sig/metronome_sdk/models/v1/credit_grant_edit_response.rbs +15 -0
  630. data/sig/metronome_sdk/models/v1/credit_grant_list_entries_params.rbs +51 -0
  631. data/sig/metronome_sdk/models/v1/credit_grant_list_entries_response.rbs +120 -0
  632. data/sig/metronome_sdk/models/v1/credit_grant_list_params.rbs +63 -0
  633. data/sig/metronome_sdk/models/v1/credit_grant_list_response.rbs +155 -0
  634. data/sig/metronome_sdk/models/v1/credit_grant_void_params.rbs +37 -0
  635. data/sig/metronome_sdk/models/v1/credit_grant_void_response.rbs +15 -0
  636. data/sig/metronome_sdk/models/v1/credit_ledger_entry.rbs +44 -0
  637. data/sig/metronome_sdk/models/v1/custom_field_add_key_params.rbs +78 -0
  638. data/sig/metronome_sdk/models/v1/custom_field_delete_values_params.rbs +78 -0
  639. data/sig/metronome_sdk/models/v1/custom_field_list_keys_params.rbs +80 -0
  640. data/sig/metronome_sdk/models/v1/custom_field_list_keys_response.rbs +92 -0
  641. data/sig/metronome_sdk/models/v1/custom_field_remove_key_params.rbs +74 -0
  642. data/sig/metronome_sdk/models/v1/custom_field_set_values_params.rbs +78 -0
  643. data/sig/metronome_sdk/models/v1/customer.rbs +38 -0
  644. data/sig/metronome_sdk/models/v1/customer_archive_params.rbs +17 -0
  645. data/sig/metronome_sdk/models/v1/customer_archive_response.rbs +15 -0
  646. data/sig/metronome_sdk/models/v1/customer_create_params.rbs +269 -0
  647. data/sig/metronome_sdk/models/v1/customer_create_response.rbs +16 -0
  648. data/sig/metronome_sdk/models/v1/customer_detail.rbs +96 -0
  649. data/sig/metronome_sdk/models/v1/customer_list_billable_metrics_params.rbs +49 -0
  650. data/sig/metronome_sdk/models/v1/customer_list_billable_metrics_response.rbs +116 -0
  651. data/sig/metronome_sdk/models/v1/customer_list_costs_params.rbs +45 -0
  652. data/sig/metronome_sdk/models/v1/customer_list_costs_response.rbs +88 -0
  653. data/sig/metronome_sdk/models/v1/customer_list_params.rbs +57 -0
  654. data/sig/metronome_sdk/models/v1/customer_retrieve_params.rbs +23 -0
  655. data/sig/metronome_sdk/models/v1/customer_retrieve_response.rbs +16 -0
  656. data/sig/metronome_sdk/models/v1/customer_set_ingest_aliases_params.rbs +26 -0
  657. data/sig/metronome_sdk/models/v1/customer_set_name_params.rbs +26 -0
  658. data/sig/metronome_sdk/models/v1/customer_set_name_response.rbs +16 -0
  659. data/sig/metronome_sdk/models/v1/customer_update_config_params.rbs +33 -0
  660. data/sig/metronome_sdk/models/v1/customers/alert_list_params.rbs +53 -0
  661. data/sig/metronome_sdk/models/v1/customers/alert_list_response.rbs +26 -0
  662. data/sig/metronome_sdk/models/v1/customers/alert_reset_params.rbs +28 -0
  663. data/sig/metronome_sdk/models/v1/customers/alert_retrieve_params.rbs +28 -0
  664. data/sig/metronome_sdk/models/v1/customers/alert_retrieve_response.rbs +20 -0
  665. data/sig/metronome_sdk/models/v1/customers/billing_config_create_params.rbs +152 -0
  666. data/sig/metronome_sdk/models/v1/customers/billing_config_delete_params.rbs +56 -0
  667. data/sig/metronome_sdk/models/v1/customers/billing_config_retrieve_params.rbs +56 -0
  668. data/sig/metronome_sdk/models/v1/customers/billing_config_retrieve_response.rbs +181 -0
  669. data/sig/metronome_sdk/models/v1/customers/commit_create_params.rbs +317 -0
  670. data/sig/metronome_sdk/models/v1/customers/commit_create_response.rbs +17 -0
  671. data/sig/metronome_sdk/models/v1/customers/commit_list_params.rbs +81 -0
  672. data/sig/metronome_sdk/models/v1/customers/commit_list_response.rbs +23 -0
  673. data/sig/metronome_sdk/models/v1/customers/commit_update_end_date_params.rbs +43 -0
  674. data/sig/metronome_sdk/models/v1/customers/commit_update_end_date_response.rbs +18 -0
  675. data/sig/metronome_sdk/models/v1/customers/credit_create_params.rbs +152 -0
  676. data/sig/metronome_sdk/models/v1/customers/credit_create_response.rbs +17 -0
  677. data/sig/metronome_sdk/models/v1/customers/credit_list_params.rbs +81 -0
  678. data/sig/metronome_sdk/models/v1/customers/credit_list_response.rbs +23 -0
  679. data/sig/metronome_sdk/models/v1/customers/credit_update_end_date_params.rbs +31 -0
  680. data/sig/metronome_sdk/models/v1/customers/credit_update_end_date_response.rbs +18 -0
  681. data/sig/metronome_sdk/models/v1/customers/customer_alert.rbs +213 -0
  682. data/sig/metronome_sdk/models/v1/customers/invoice.rbs +995 -0
  683. data/sig/metronome_sdk/models/v1/customers/invoice_add_charge_params.rbs +51 -0
  684. data/sig/metronome_sdk/models/v1/customers/invoice_add_charge_response.rbs +15 -0
  685. data/sig/metronome_sdk/models/v1/customers/invoice_list_breakdowns_params.rbs +103 -0
  686. data/sig/metronome_sdk/models/v1/customers/invoice_list_breakdowns_response.rbs +27 -0
  687. data/sig/metronome_sdk/models/v1/customers/invoice_list_params.rbs +88 -0
  688. data/sig/metronome_sdk/models/v1/customers/invoice_retrieve_params.rbs +37 -0
  689. data/sig/metronome_sdk/models/v1/customers/invoice_retrieve_response.rbs +20 -0
  690. data/sig/metronome_sdk/models/v1/customers/named_schedule_retrieve_params.rbs +33 -0
  691. data/sig/metronome_sdk/models/v1/customers/named_schedule_retrieve_response.rbs +42 -0
  692. data/sig/metronome_sdk/models/v1/customers/named_schedule_update_params.rbs +45 -0
  693. data/sig/metronome_sdk/models/v1/customers/plan_add_params.rbs +183 -0
  694. data/sig/metronome_sdk/models/v1/customers/plan_add_response.rbs +17 -0
  695. data/sig/metronome_sdk/models/v1/customers/plan_end_params.rbs +49 -0
  696. data/sig/metronome_sdk/models/v1/customers/plan_end_response.rbs +15 -0
  697. data/sig/metronome_sdk/models/v1/customers/plan_list_params.rbs +35 -0
  698. data/sig/metronome_sdk/models/v1/customers/plan_list_price_adjustments_params.rbs +43 -0
  699. data/sig/metronome_sdk/models/v1/customers/plan_list_price_adjustments_response.rbs +94 -0
  700. data/sig/metronome_sdk/models/v1/customers/plan_list_response.rbs +104 -0
  701. data/sig/metronome_sdk/models/v1/dashboard_get_embeddable_url_params.rbs +176 -0
  702. data/sig/metronome_sdk/models/v1/dashboard_get_embeddable_url_response.rbs +32 -0
  703. data/sig/metronome_sdk/models/v1/invoice_regenerate_params.rbs +22 -0
  704. data/sig/metronome_sdk/models/v1/invoice_regenerate_response.rbs +32 -0
  705. data/sig/metronome_sdk/models/v1/invoice_void_params.rbs +22 -0
  706. data/sig/metronome_sdk/models/v1/invoice_void_response.rbs +32 -0
  707. data/sig/metronome_sdk/models/v1/plan_detail.rbs +173 -0
  708. data/sig/metronome_sdk/models/v1/plan_get_details_params.rbs +22 -0
  709. data/sig/metronome_sdk/models/v1/plan_get_details_response.rbs +16 -0
  710. data/sig/metronome_sdk/models/v1/plan_list_charges_params.rbs +33 -0
  711. data/sig/metronome_sdk/models/v1/plan_list_charges_response.rbs +159 -0
  712. data/sig/metronome_sdk/models/v1/plan_list_customers_params.rbs +58 -0
  713. data/sig/metronome_sdk/models/v1/plan_list_customers_response.rbs +59 -0
  714. data/sig/metronome_sdk/models/v1/plan_list_params.rbs +30 -0
  715. data/sig/metronome_sdk/models/v1/plan_list_response.rbs +34 -0
  716. data/sig/metronome_sdk/models/v1/pricing_unit_list_params.rbs +30 -0
  717. data/sig/metronome_sdk/models/v1/pricing_unit_list_response.rbs +26 -0
  718. data/sig/metronome_sdk/models/v1/rollover_amount_max_amount.rbs +34 -0
  719. data/sig/metronome_sdk/models/v1/rollover_amount_max_percentage.rbs +34 -0
  720. data/sig/metronome_sdk/models/v1/service_list_params.rbs +17 -0
  721. data/sig/metronome_sdk/models/v1/service_list_response.rbs +54 -0
  722. data/sig/metronome_sdk/models/v1/usage_ingest_params.rbs +60 -0
  723. data/sig/metronome_sdk/models/v1/usage_list_params.rbs +102 -0
  724. data/sig/metronome_sdk/models/v1/usage_list_response.rbs +65 -0
  725. data/sig/metronome_sdk/models/v1/usage_list_with_groups_params.rbs +97 -0
  726. data/sig/metronome_sdk/models/v1/usage_list_with_groups_response.rbs +36 -0
  727. data/sig/metronome_sdk/models/v2/contract_edit_commit_params.rbs +279 -0
  728. data/sig/metronome_sdk/models/v2/contract_edit_commit_response.rbs +15 -0
  729. data/sig/metronome_sdk/models/v2/contract_edit_credit_params.rbs +148 -0
  730. data/sig/metronome_sdk/models/v2/contract_edit_credit_response.rbs +15 -0
  731. data/sig/metronome_sdk/models/v2/contract_edit_params.rbs +2726 -0
  732. data/sig/metronome_sdk/models/v2/contract_edit_response.rbs +15 -0
  733. data/sig/metronome_sdk/models/v2/contract_get_edit_history_params.rbs +26 -0
  734. data/sig/metronome_sdk/models/v2/contract_get_edit_history_response.rbs +2128 -0
  735. data/sig/metronome_sdk/models/v2/contract_list_params.rbs +55 -0
  736. data/sig/metronome_sdk/models/v2/contract_list_response.rbs +2586 -0
  737. data/sig/metronome_sdk/models/v2/contract_retrieve_params.rbs +47 -0
  738. data/sig/metronome_sdk/models/v2/contract_retrieve_response.rbs +2586 -0
  739. data/sig/metronome_sdk/request_options.rbs +36 -0
  740. data/sig/metronome_sdk/resources/v1/alerts.rbs +32 -0
  741. data/sig/metronome_sdk/resources/v1/audit_logs.rbs +20 -0
  742. data/sig/metronome_sdk/resources/v1/billable_metrics.rbs +38 -0
  743. data/sig/metronome_sdk/resources/v1/contracts/named_schedules.rbs +27 -0
  744. data/sig/metronome_sdk/resources/v1/contracts/products.rbs +65 -0
  745. data/sig/metronome_sdk/resources/v1/contracts/rate_cards/named_schedules.rbs +31 -0
  746. data/sig/metronome_sdk/resources/v1/contracts/rate_cards/product_orders.rbs +25 -0
  747. data/sig/metronome_sdk/resources/v1/contracts/rate_cards/rates.rbs +47 -0
  748. data/sig/metronome_sdk/resources/v1/contracts/rate_cards.rbs +57 -0
  749. data/sig/metronome_sdk/resources/v1/contracts.rbs +159 -0
  750. data/sig/metronome_sdk/resources/v1/credit_grants.rbs +62 -0
  751. data/sig/metronome_sdk/resources/v1/custom_fields.rbs +42 -0
  752. data/sig/metronome_sdk/resources/v1/customers/alerts.rbs +30 -0
  753. data/sig/metronome_sdk/resources/v1/customers/billing_config.rbs +33 -0
  754. data/sig/metronome_sdk/resources/v1/customers/commits.rbs +54 -0
  755. data/sig/metronome_sdk/resources/v1/customers/credits.rbs +50 -0
  756. data/sig/metronome_sdk/resources/v1/customers/invoices.rbs +56 -0
  757. data/sig/metronome_sdk/resources/v1/customers/named_schedules.rbs +27 -0
  758. data/sig/metronome_sdk/resources/v1/customers/plans.rbs +47 -0
  759. data/sig/metronome_sdk/resources/v1/customers.rbs +90 -0
  760. data/sig/metronome_sdk/resources/v1/dashboards.rbs +18 -0
  761. data/sig/metronome_sdk/resources/v1/invoices.rbs +19 -0
  762. data/sig/metronome_sdk/resources/v1/plans.rbs +35 -0
  763. data/sig/metronome_sdk/resources/v1/pricing_units.rbs +15 -0
  764. data/sig/metronome_sdk/resources/v1/services.rbs +13 -0
  765. data/sig/metronome_sdk/resources/v1/usage.rbs +37 -0
  766. data/sig/metronome_sdk/resources/v1.rbs +33 -0
  767. data/sig/metronome_sdk/resources/v2/contracts.rbs +80 -0
  768. data/sig/metronome_sdk/resources/v2.rbs +9 -0
  769. data/sig/metronome_sdk/version.rbs +3 -0
  770. metadata +827 -0
@@ -0,0 +1,1756 @@
1
+ # typed: strong
2
+
3
+ module MetronomeSDK
4
+ module Models
5
+ module V1
6
+ module Customers
7
+ class Invoice < MetronomeSDK::Internal::Type::BaseModel
8
+ sig { returns(String) }
9
+ attr_accessor :id
10
+
11
+ sig { returns(MetronomeSDK::Models::CreditTypeData) }
12
+ attr_reader :credit_type
13
+
14
+ sig { params(credit_type: T.any(MetronomeSDK::Models::CreditTypeData, MetronomeSDK::Internal::AnyHash)).void }
15
+ attr_writer :credit_type
16
+
17
+ sig { returns(String) }
18
+ attr_accessor :customer_id
19
+
20
+ sig { returns(T::Array[MetronomeSDK::Models::V1::Customers::Invoice::LineItem]) }
21
+ attr_accessor :line_items
22
+
23
+ sig { returns(String) }
24
+ attr_accessor :status
25
+
26
+ sig { returns(Float) }
27
+ attr_accessor :total
28
+
29
+ sig { returns(String) }
30
+ attr_accessor :type
31
+
32
+ sig { returns(T.nilable(String)) }
33
+ attr_reader :amendment_id
34
+
35
+ sig { params(amendment_id: String).void }
36
+ attr_writer :amendment_id
37
+
38
+ # This field's availability is dependent on your client's configuration.
39
+ sig { returns(T.nilable(MetronomeSDK::Models::V1::Customers::Invoice::BillableStatus::TaggedSymbol)) }
40
+ attr_reader :billable_status
41
+
42
+ sig { params(billable_status: MetronomeSDK::Models::V1::Customers::Invoice::BillableStatus::OrSymbol).void }
43
+ attr_writer :billable_status
44
+
45
+ sig { returns(T.nilable(T::Hash[Symbol, String])) }
46
+ attr_reader :contract_custom_fields
47
+
48
+ sig { params(contract_custom_fields: T::Hash[Symbol, String]).void }
49
+ attr_writer :contract_custom_fields
50
+
51
+ sig { returns(T.nilable(String)) }
52
+ attr_reader :contract_id
53
+
54
+ sig { params(contract_id: String).void }
55
+ attr_writer :contract_id
56
+
57
+ sig { returns(T.nilable(MetronomeSDK::Models::V1::Customers::Invoice::CorrectionRecord)) }
58
+ attr_reader :correction_record
59
+
60
+ sig do
61
+ params(
62
+ correction_record: T.any(MetronomeSDK::Models::V1::Customers::Invoice::CorrectionRecord, MetronomeSDK::Internal::AnyHash)
63
+ )
64
+ .void
65
+ end
66
+ attr_writer :correction_record
67
+
68
+ # When the invoice was created (UTC). This field is present for correction
69
+ # invoices only.
70
+ sig { returns(T.nilable(Time)) }
71
+ attr_reader :created_at
72
+
73
+ sig { params(created_at: Time).void }
74
+ attr_writer :created_at
75
+
76
+ sig { returns(T.nilable(T::Hash[Symbol, T.anything])) }
77
+ attr_reader :custom_fields
78
+
79
+ sig { params(custom_fields: T::Hash[Symbol, T.anything]).void }
80
+ attr_writer :custom_fields
81
+
82
+ sig { returns(T.nilable(T::Hash[Symbol, String])) }
83
+ attr_reader :customer_custom_fields
84
+
85
+ sig { params(customer_custom_fields: T::Hash[Symbol, String]).void }
86
+ attr_writer :customer_custom_fields
87
+
88
+ # End of the usage period this invoice covers (UTC)
89
+ sig { returns(T.nilable(Time)) }
90
+ attr_reader :end_timestamp
91
+
92
+ sig { params(end_timestamp: Time).void }
93
+ attr_writer :end_timestamp
94
+
95
+ sig { returns(T.nilable(MetronomeSDK::Models::V1::Customers::Invoice::ExternalInvoice)) }
96
+ attr_reader :external_invoice
97
+
98
+ sig do
99
+ params(
100
+ external_invoice: T.nilable(
101
+ T.any(MetronomeSDK::Models::V1::Customers::Invoice::ExternalInvoice, MetronomeSDK::Internal::AnyHash)
102
+ )
103
+ )
104
+ .void
105
+ end
106
+ attr_writer :external_invoice
107
+
108
+ sig { returns(T.nilable(T::Array[MetronomeSDK::Models::V1::Customers::Invoice::InvoiceAdjustment])) }
109
+ attr_reader :invoice_adjustments
110
+
111
+ sig do
112
+ params(
113
+ invoice_adjustments: T::Array[T.any(MetronomeSDK::Models::V1::Customers::Invoice::InvoiceAdjustment, MetronomeSDK::Internal::AnyHash)]
114
+ )
115
+ .void
116
+ end
117
+ attr_writer :invoice_adjustments
118
+
119
+ # When the invoice was issued (UTC)
120
+ sig { returns(T.nilable(Time)) }
121
+ attr_reader :issued_at
122
+
123
+ sig { params(issued_at: Time).void }
124
+ attr_writer :issued_at
125
+
126
+ sig { returns(T.nilable(Float)) }
127
+ attr_reader :net_payment_terms_days
128
+
129
+ sig { params(net_payment_terms_days: Float).void }
130
+ attr_writer :net_payment_terms_days
131
+
132
+ # This field's availability is dependent on your client's configuration.
133
+ sig { returns(T.nilable(String)) }
134
+ attr_reader :netsuite_sales_order_id
135
+
136
+ sig { params(netsuite_sales_order_id: String).void }
137
+ attr_writer :netsuite_sales_order_id
138
+
139
+ sig { returns(T.nilable(T::Hash[Symbol, String])) }
140
+ attr_reader :plan_custom_fields
141
+
142
+ sig { params(plan_custom_fields: T::Hash[Symbol, String]).void }
143
+ attr_writer :plan_custom_fields
144
+
145
+ sig { returns(T.nilable(String)) }
146
+ attr_reader :plan_id
147
+
148
+ sig { params(plan_id: String).void }
149
+ attr_writer :plan_id
150
+
151
+ sig { returns(T.nilable(String)) }
152
+ attr_reader :plan_name
153
+
154
+ sig { params(plan_name: String).void }
155
+ attr_writer :plan_name
156
+
157
+ # Only present for contract invoices with reseller royalties.
158
+ sig { returns(T.nilable(MetronomeSDK::Models::V1::Customers::Invoice::ResellerRoyalty)) }
159
+ attr_reader :reseller_royalty
160
+
161
+ sig do
162
+ params(
163
+ reseller_royalty: T.any(MetronomeSDK::Models::V1::Customers::Invoice::ResellerRoyalty, MetronomeSDK::Internal::AnyHash)
164
+ )
165
+ .void
166
+ end
167
+ attr_writer :reseller_royalty
168
+
169
+ # This field's availability is dependent on your client's configuration.
170
+ sig { returns(T.nilable(String)) }
171
+ attr_reader :salesforce_opportunity_id
172
+
173
+ sig { params(salesforce_opportunity_id: String).void }
174
+ attr_writer :salesforce_opportunity_id
175
+
176
+ # Beginning of the usage period this invoice covers (UTC)
177
+ sig { returns(T.nilable(Time)) }
178
+ attr_reader :start_timestamp
179
+
180
+ sig { params(start_timestamp: Time).void }
181
+ attr_writer :start_timestamp
182
+
183
+ sig { returns(T.nilable(Float)) }
184
+ attr_reader :subtotal
185
+
186
+ sig { params(subtotal: Float).void }
187
+ attr_writer :subtotal
188
+
189
+ sig do
190
+ params(
191
+ id: String,
192
+ credit_type: T.any(MetronomeSDK::Models::CreditTypeData, MetronomeSDK::Internal::AnyHash),
193
+ customer_id: String,
194
+ line_items: T::Array[T.any(MetronomeSDK::Models::V1::Customers::Invoice::LineItem, MetronomeSDK::Internal::AnyHash)],
195
+ status: String,
196
+ total: Float,
197
+ type: String,
198
+ amendment_id: String,
199
+ billable_status: MetronomeSDK::Models::V1::Customers::Invoice::BillableStatus::OrSymbol,
200
+ contract_custom_fields: T::Hash[Symbol, String],
201
+ contract_id: String,
202
+ correction_record: T.any(MetronomeSDK::Models::V1::Customers::Invoice::CorrectionRecord, MetronomeSDK::Internal::AnyHash),
203
+ created_at: Time,
204
+ custom_fields: T::Hash[Symbol, T.anything],
205
+ customer_custom_fields: T::Hash[Symbol, String],
206
+ end_timestamp: Time,
207
+ external_invoice: T.nilable(
208
+ T.any(MetronomeSDK::Models::V1::Customers::Invoice::ExternalInvoice, MetronomeSDK::Internal::AnyHash)
209
+ ),
210
+ invoice_adjustments: T::Array[T.any(MetronomeSDK::Models::V1::Customers::Invoice::InvoiceAdjustment, MetronomeSDK::Internal::AnyHash)],
211
+ issued_at: Time,
212
+ net_payment_terms_days: Float,
213
+ netsuite_sales_order_id: String,
214
+ plan_custom_fields: T::Hash[Symbol, String],
215
+ plan_id: String,
216
+ plan_name: String,
217
+ reseller_royalty: T.any(MetronomeSDK::Models::V1::Customers::Invoice::ResellerRoyalty, MetronomeSDK::Internal::AnyHash),
218
+ salesforce_opportunity_id: String,
219
+ start_timestamp: Time,
220
+ subtotal: Float
221
+ )
222
+ .returns(T.attached_class)
223
+ end
224
+ def self.new(
225
+ id:,
226
+ credit_type:,
227
+ customer_id:,
228
+ line_items:,
229
+ status:,
230
+ total:,
231
+ type:,
232
+ amendment_id: nil,
233
+ # This field's availability is dependent on your client's configuration.
234
+ billable_status: nil,
235
+ contract_custom_fields: nil,
236
+ contract_id: nil,
237
+ correction_record: nil,
238
+ # When the invoice was created (UTC). This field is present for correction
239
+ # invoices only.
240
+ created_at: nil,
241
+ custom_fields: nil,
242
+ customer_custom_fields: nil,
243
+ # End of the usage period this invoice covers (UTC)
244
+ end_timestamp: nil,
245
+ external_invoice: nil,
246
+ invoice_adjustments: nil,
247
+ # When the invoice was issued (UTC)
248
+ issued_at: nil,
249
+ net_payment_terms_days: nil,
250
+ # This field's availability is dependent on your client's configuration.
251
+ netsuite_sales_order_id: nil,
252
+ plan_custom_fields: nil,
253
+ plan_id: nil,
254
+ plan_name: nil,
255
+ # Only present for contract invoices with reseller royalties.
256
+ reseller_royalty: nil,
257
+ # This field's availability is dependent on your client's configuration.
258
+ salesforce_opportunity_id: nil,
259
+ # Beginning of the usage period this invoice covers (UTC)
260
+ start_timestamp: nil,
261
+ subtotal: nil
262
+ ); end
263
+ sig do
264
+ override
265
+ .returns(
266
+ {
267
+ id: String,
268
+ credit_type: MetronomeSDK::Models::CreditTypeData,
269
+ customer_id: String,
270
+ line_items: T::Array[MetronomeSDK::Models::V1::Customers::Invoice::LineItem],
271
+ status: String,
272
+ total: Float,
273
+ type: String,
274
+ amendment_id: String,
275
+ billable_status: MetronomeSDK::Models::V1::Customers::Invoice::BillableStatus::TaggedSymbol,
276
+ contract_custom_fields: T::Hash[Symbol, String],
277
+ contract_id: String,
278
+ correction_record: MetronomeSDK::Models::V1::Customers::Invoice::CorrectionRecord,
279
+ created_at: Time,
280
+ custom_fields: T::Hash[Symbol, T.anything],
281
+ customer_custom_fields: T::Hash[Symbol, String],
282
+ end_timestamp: Time,
283
+ external_invoice: T.nilable(MetronomeSDK::Models::V1::Customers::Invoice::ExternalInvoice),
284
+ invoice_adjustments: T::Array[MetronomeSDK::Models::V1::Customers::Invoice::InvoiceAdjustment],
285
+ issued_at: Time,
286
+ net_payment_terms_days: Float,
287
+ netsuite_sales_order_id: String,
288
+ plan_custom_fields: T::Hash[Symbol, String],
289
+ plan_id: String,
290
+ plan_name: String,
291
+ reseller_royalty: MetronomeSDK::Models::V1::Customers::Invoice::ResellerRoyalty,
292
+ salesforce_opportunity_id: String,
293
+ start_timestamp: Time,
294
+ subtotal: Float
295
+ }
296
+ )
297
+ end
298
+ def to_hash; end
299
+
300
+ class LineItem < MetronomeSDK::Internal::Type::BaseModel
301
+ sig { returns(MetronomeSDK::Models::CreditTypeData) }
302
+ attr_reader :credit_type
303
+
304
+ sig { params(credit_type: T.any(MetronomeSDK::Models::CreditTypeData, MetronomeSDK::Internal::AnyHash)).void }
305
+ attr_writer :credit_type
306
+
307
+ sig { returns(String) }
308
+ attr_accessor :name
309
+
310
+ sig { returns(Float) }
311
+ attr_accessor :total
312
+
313
+ # Details about the credit or commit that was applied to this line item. Only
314
+ # present on line items with product of `USAGE`, `SUBSCRIPTION` or `COMPOSITE`
315
+ # types.
316
+ sig { returns(T.nilable(MetronomeSDK::Models::V1::Customers::Invoice::LineItem::AppliedCommitOrCredit)) }
317
+ attr_reader :applied_commit_or_credit
318
+
319
+ sig do
320
+ params(
321
+ applied_commit_or_credit: T.any(
322
+ MetronomeSDK::Models::V1::Customers::Invoice::LineItem::AppliedCommitOrCredit,
323
+ MetronomeSDK::Internal::AnyHash
324
+ )
325
+ )
326
+ .void
327
+ end
328
+ attr_writer :applied_commit_or_credit
329
+
330
+ sig { returns(T.nilable(T::Hash[Symbol, String])) }
331
+ attr_reader :commit_custom_fields
332
+
333
+ sig { params(commit_custom_fields: T::Hash[Symbol, String]).void }
334
+ attr_writer :commit_custom_fields
335
+
336
+ # For line items with product of `USAGE`, `SUBSCRIPTION`, or `COMPOSITE` types,
337
+ # the ID of the credit or commit that was applied to this line item. For line
338
+ # items with product type of `FIXED`, the ID of the prepaid or postpaid commit
339
+ # that is being paid for.
340
+ sig { returns(T.nilable(String)) }
341
+ attr_reader :commit_id
342
+
343
+ sig { params(commit_id: String).void }
344
+ attr_writer :commit_id
345
+
346
+ sig { returns(T.nilable(String)) }
347
+ attr_reader :commit_netsuite_item_id
348
+
349
+ sig { params(commit_netsuite_item_id: String).void }
350
+ attr_writer :commit_netsuite_item_id
351
+
352
+ sig { returns(T.nilable(String)) }
353
+ attr_reader :commit_netsuite_sales_order_id
354
+
355
+ sig { params(commit_netsuite_sales_order_id: String).void }
356
+ attr_writer :commit_netsuite_sales_order_id
357
+
358
+ sig { returns(T.nilable(String)) }
359
+ attr_reader :commit_segment_id
360
+
361
+ sig { params(commit_segment_id: String).void }
362
+ attr_writer :commit_segment_id
363
+
364
+ # `PrepaidCommit` (for commit types `PREPAID` and `CREDIT`) or `PostpaidCommit`
365
+ # (for commit type `POSTPAID`).
366
+ sig { returns(T.nilable(String)) }
367
+ attr_reader :commit_type
368
+
369
+ sig { params(commit_type: String).void }
370
+ attr_writer :commit_type
371
+
372
+ sig { returns(T.nilable(T::Hash[Symbol, String])) }
373
+ attr_reader :custom_fields
374
+
375
+ sig { params(custom_fields: T::Hash[Symbol, String]).void }
376
+ attr_writer :custom_fields
377
+
378
+ # The line item's end date (exclusive).
379
+ sig { returns(T.nilable(Time)) }
380
+ attr_reader :ending_before
381
+
382
+ sig { params(ending_before: Time).void }
383
+ attr_writer :ending_before
384
+
385
+ sig { returns(T.nilable(String)) }
386
+ attr_reader :group_key
387
+
388
+ sig { params(group_key: String).void }
389
+ attr_writer :group_key
390
+
391
+ sig { returns(T.nilable(String)) }
392
+ attr_accessor :group_value
393
+
394
+ # Indicates whether the line item is prorated for `SUBSCRIPTION` type product.
395
+ sig { returns(T.nilable(T::Boolean)) }
396
+ attr_reader :is_prorated
397
+
398
+ sig { params(is_prorated: T::Boolean).void }
399
+ attr_writer :is_prorated
400
+
401
+ # Only present for contract invoices and when the `include_list_prices` query
402
+ # parameter is set to true. This will include the list rate for the charge if
403
+ # applicable. Only present for usage and subscription line items.
404
+ sig { returns(T.nilable(MetronomeSDK::Models::Rate)) }
405
+ attr_reader :list_price
406
+
407
+ sig { params(list_price: T.any(MetronomeSDK::Models::Rate, MetronomeSDK::Internal::AnyHash)).void }
408
+ attr_writer :list_price
409
+
410
+ sig { returns(T.nilable(String)) }
411
+ attr_reader :metadata
412
+
413
+ sig { params(metadata: String).void }
414
+ attr_writer :metadata
415
+
416
+ # The end date for the billing period on the invoice.
417
+ sig { returns(T.nilable(Time)) }
418
+ attr_reader :netsuite_invoice_billing_end
419
+
420
+ sig { params(netsuite_invoice_billing_end: Time).void }
421
+ attr_writer :netsuite_invoice_billing_end
422
+
423
+ # The start date for the billing period on the invoice.
424
+ sig { returns(T.nilable(Time)) }
425
+ attr_reader :netsuite_invoice_billing_start
426
+
427
+ sig { params(netsuite_invoice_billing_start: Time).void }
428
+ attr_writer :netsuite_invoice_billing_start
429
+
430
+ sig { returns(T.nilable(String)) }
431
+ attr_reader :netsuite_item_id
432
+
433
+ sig { params(netsuite_item_id: String).void }
434
+ attr_writer :netsuite_item_id
435
+
436
+ # Only present for line items paying for a postpaid commit true-up.
437
+ sig { returns(T.nilable(MetronomeSDK::Models::V1::Customers::Invoice::LineItem::PostpaidCommit)) }
438
+ attr_reader :postpaid_commit
439
+
440
+ sig do
441
+ params(
442
+ postpaid_commit: T.any(
443
+ MetronomeSDK::Models::V1::Customers::Invoice::LineItem::PostpaidCommit,
444
+ MetronomeSDK::Internal::AnyHash
445
+ )
446
+ )
447
+ .void
448
+ end
449
+ attr_writer :postpaid_commit
450
+
451
+ # Includes the presentation group values associated with this line item if
452
+ # presentation group keys are used.
453
+ sig { returns(T.nilable(T::Hash[Symbol, T.nilable(String)])) }
454
+ attr_reader :presentation_group_values
455
+
456
+ sig { params(presentation_group_values: T::Hash[Symbol, T.nilable(String)]).void }
457
+ attr_writer :presentation_group_values
458
+
459
+ # Includes the pricing group values associated with this line item if dimensional
460
+ # pricing is used.
461
+ sig { returns(T.nilable(T::Hash[Symbol, String])) }
462
+ attr_reader :pricing_group_values
463
+
464
+ sig { params(pricing_group_values: T::Hash[Symbol, String]).void }
465
+ attr_writer :pricing_group_values
466
+
467
+ sig { returns(T.nilable(T::Hash[Symbol, String])) }
468
+ attr_reader :product_custom_fields
469
+
470
+ sig { params(product_custom_fields: T::Hash[Symbol, String]).void }
471
+ attr_writer :product_custom_fields
472
+
473
+ # ID of the product associated with the line item.
474
+ sig { returns(T.nilable(String)) }
475
+ attr_reader :product_id
476
+
477
+ sig { params(product_id: String).void }
478
+ attr_writer :product_id
479
+
480
+ # The current product tags associated with the line item's `product_id`.
481
+ sig { returns(T.nilable(T::Array[String])) }
482
+ attr_reader :product_tags
483
+
484
+ sig { params(product_tags: T::Array[String]).void }
485
+ attr_writer :product_tags
486
+
487
+ # The type of the line item's product. Possible values are `FixedProductListItem`
488
+ # (for `FIXED` type products), `UsageProductListItem` (for `USAGE` type products),
489
+ # `SubscriptionProductListItem` (for `SUBSCRIPTION` type products) or
490
+ # `CompositeProductListItem` (for `COMPOSITE` type products). For scheduled
491
+ # charges, commit and credit payments, the value is `FixedProductListItem`.
492
+ sig { returns(T.nilable(String)) }
493
+ attr_reader :product_type
494
+
495
+ sig { params(product_type: String).void }
496
+ attr_writer :product_type
497
+
498
+ # only present for beta contract invoices
499
+ sig { returns(T.nilable(T::Hash[Symbol, String])) }
500
+ attr_reader :professional_service_custom_fields
501
+
502
+ sig { params(professional_service_custom_fields: T::Hash[Symbol, String]).void }
503
+ attr_writer :professional_service_custom_fields
504
+
505
+ # only present for beta contract invoices
506
+ sig { returns(T.nilable(String)) }
507
+ attr_reader :professional_service_id
508
+
509
+ sig { params(professional_service_id: String).void }
510
+ attr_writer :professional_service_id
511
+
512
+ # The quantity associated with the line item.
513
+ sig { returns(T.nilable(Float)) }
514
+ attr_reader :quantity
515
+
516
+ sig { params(quantity: Float).void }
517
+ attr_writer :quantity
518
+
519
+ sig { returns(T.nilable(MetronomeSDK::Models::V1::Customers::Invoice::LineItem::ResellerType::TaggedSymbol)) }
520
+ attr_reader :reseller_type
521
+
522
+ sig { params(reseller_type: MetronomeSDK::Models::V1::Customers::Invoice::LineItem::ResellerType::OrSymbol).void }
523
+ attr_writer :reseller_type
524
+
525
+ sig { returns(T.nilable(T::Hash[Symbol, String])) }
526
+ attr_reader :scheduled_charge_custom_fields
527
+
528
+ sig { params(scheduled_charge_custom_fields: T::Hash[Symbol, String]).void }
529
+ attr_writer :scheduled_charge_custom_fields
530
+
531
+ # only present for beta contract invoices
532
+ sig { returns(T.nilable(String)) }
533
+ attr_reader :scheduled_charge_id
534
+
535
+ sig { params(scheduled_charge_id: String).void }
536
+ attr_writer :scheduled_charge_id
537
+
538
+ # The line item's start date (inclusive).
539
+ sig { returns(T.nilable(Time)) }
540
+ attr_reader :starting_at
541
+
542
+ sig { params(starting_at: Time).void }
543
+ attr_writer :starting_at
544
+
545
+ sig { returns(T.nilable(T::Array[MetronomeSDK::Models::V1::Customers::Invoice::LineItem::SubLineItem])) }
546
+ attr_reader :sub_line_items
547
+
548
+ sig do
549
+ params(
550
+ sub_line_items: T::Array[
551
+ T.any(
552
+ MetronomeSDK::Models::V1::Customers::Invoice::LineItem::SubLineItem,
553
+ MetronomeSDK::Internal::AnyHash
554
+ )
555
+ ]
556
+ )
557
+ .void
558
+ end
559
+ attr_writer :sub_line_items
560
+
561
+ sig { returns(T.nilable(T::Hash[Symbol, String])) }
562
+ attr_reader :subscription_custom_fields
563
+
564
+ sig { params(subscription_custom_fields: T::Hash[Symbol, String]).void }
565
+ attr_writer :subscription_custom_fields
566
+
567
+ # Populated if the line item has a tiered price.
568
+ sig { returns(T.nilable(MetronomeSDK::Models::V1::Customers::Invoice::LineItem::Tier)) }
569
+ attr_reader :tier
570
+
571
+ sig do
572
+ params(
573
+ tier: T.any(MetronomeSDK::Models::V1::Customers::Invoice::LineItem::Tier, MetronomeSDK::Internal::AnyHash)
574
+ )
575
+ .void
576
+ end
577
+ attr_writer :tier
578
+
579
+ # The unit price associated with the line item.
580
+ sig { returns(T.nilable(Float)) }
581
+ attr_reader :unit_price
582
+
583
+ sig { params(unit_price: Float).void }
584
+ attr_writer :unit_price
585
+
586
+ sig do
587
+ params(
588
+ credit_type: T.any(MetronomeSDK::Models::CreditTypeData, MetronomeSDK::Internal::AnyHash),
589
+ name: String,
590
+ total: Float,
591
+ applied_commit_or_credit: T.any(
592
+ MetronomeSDK::Models::V1::Customers::Invoice::LineItem::AppliedCommitOrCredit,
593
+ MetronomeSDK::Internal::AnyHash
594
+ ),
595
+ commit_custom_fields: T::Hash[Symbol, String],
596
+ commit_id: String,
597
+ commit_netsuite_item_id: String,
598
+ commit_netsuite_sales_order_id: String,
599
+ commit_segment_id: String,
600
+ commit_type: String,
601
+ custom_fields: T::Hash[Symbol, String],
602
+ ending_before: Time,
603
+ group_key: String,
604
+ group_value: T.nilable(String),
605
+ is_prorated: T::Boolean,
606
+ list_price: T.any(MetronomeSDK::Models::Rate, MetronomeSDK::Internal::AnyHash),
607
+ metadata: String,
608
+ netsuite_invoice_billing_end: Time,
609
+ netsuite_invoice_billing_start: Time,
610
+ netsuite_item_id: String,
611
+ postpaid_commit: T.any(
612
+ MetronomeSDK::Models::V1::Customers::Invoice::LineItem::PostpaidCommit,
613
+ MetronomeSDK::Internal::AnyHash
614
+ ),
615
+ presentation_group_values: T::Hash[Symbol, T.nilable(String)],
616
+ pricing_group_values: T::Hash[Symbol, String],
617
+ product_custom_fields: T::Hash[Symbol, String],
618
+ product_id: String,
619
+ product_tags: T::Array[String],
620
+ product_type: String,
621
+ professional_service_custom_fields: T::Hash[Symbol, String],
622
+ professional_service_id: String,
623
+ quantity: Float,
624
+ reseller_type: MetronomeSDK::Models::V1::Customers::Invoice::LineItem::ResellerType::OrSymbol,
625
+ scheduled_charge_custom_fields: T::Hash[Symbol, String],
626
+ scheduled_charge_id: String,
627
+ starting_at: Time,
628
+ sub_line_items: T::Array[
629
+ T.any(
630
+ MetronomeSDK::Models::V1::Customers::Invoice::LineItem::SubLineItem,
631
+ MetronomeSDK::Internal::AnyHash
632
+ )
633
+ ],
634
+ subscription_custom_fields: T::Hash[Symbol, String],
635
+ tier: T.any(MetronomeSDK::Models::V1::Customers::Invoice::LineItem::Tier, MetronomeSDK::Internal::AnyHash),
636
+ unit_price: Float
637
+ )
638
+ .returns(T.attached_class)
639
+ end
640
+ def self.new(
641
+ credit_type:,
642
+ name:,
643
+ total:,
644
+ # Details about the credit or commit that was applied to this line item. Only
645
+ # present on line items with product of `USAGE`, `SUBSCRIPTION` or `COMPOSITE`
646
+ # types.
647
+ applied_commit_or_credit: nil,
648
+ commit_custom_fields: nil,
649
+ # For line items with product of `USAGE`, `SUBSCRIPTION`, or `COMPOSITE` types,
650
+ # the ID of the credit or commit that was applied to this line item. For line
651
+ # items with product type of `FIXED`, the ID of the prepaid or postpaid commit
652
+ # that is being paid for.
653
+ commit_id: nil,
654
+ commit_netsuite_item_id: nil,
655
+ commit_netsuite_sales_order_id: nil,
656
+ commit_segment_id: nil,
657
+ # `PrepaidCommit` (for commit types `PREPAID` and `CREDIT`) or `PostpaidCommit`
658
+ # (for commit type `POSTPAID`).
659
+ commit_type: nil,
660
+ custom_fields: nil,
661
+ # The line item's end date (exclusive).
662
+ ending_before: nil,
663
+ group_key: nil,
664
+ group_value: nil,
665
+ # Indicates whether the line item is prorated for `SUBSCRIPTION` type product.
666
+ is_prorated: nil,
667
+ # Only present for contract invoices and when the `include_list_prices` query
668
+ # parameter is set to true. This will include the list rate for the charge if
669
+ # applicable. Only present for usage and subscription line items.
670
+ list_price: nil,
671
+ metadata: nil,
672
+ # The end date for the billing period on the invoice.
673
+ netsuite_invoice_billing_end: nil,
674
+ # The start date for the billing period on the invoice.
675
+ netsuite_invoice_billing_start: nil,
676
+ netsuite_item_id: nil,
677
+ # Only present for line items paying for a postpaid commit true-up.
678
+ postpaid_commit: nil,
679
+ # Includes the presentation group values associated with this line item if
680
+ # presentation group keys are used.
681
+ presentation_group_values: nil,
682
+ # Includes the pricing group values associated with this line item if dimensional
683
+ # pricing is used.
684
+ pricing_group_values: nil,
685
+ product_custom_fields: nil,
686
+ # ID of the product associated with the line item.
687
+ product_id: nil,
688
+ # The current product tags associated with the line item's `product_id`.
689
+ product_tags: nil,
690
+ # The type of the line item's product. Possible values are `FixedProductListItem`
691
+ # (for `FIXED` type products), `UsageProductListItem` (for `USAGE` type products),
692
+ # `SubscriptionProductListItem` (for `SUBSCRIPTION` type products) or
693
+ # `CompositeProductListItem` (for `COMPOSITE` type products). For scheduled
694
+ # charges, commit and credit payments, the value is `FixedProductListItem`.
695
+ product_type: nil,
696
+ # only present for beta contract invoices
697
+ professional_service_custom_fields: nil,
698
+ # only present for beta contract invoices
699
+ professional_service_id: nil,
700
+ # The quantity associated with the line item.
701
+ quantity: nil,
702
+ reseller_type: nil,
703
+ scheduled_charge_custom_fields: nil,
704
+ # only present for beta contract invoices
705
+ scheduled_charge_id: nil,
706
+ # The line item's start date (inclusive).
707
+ starting_at: nil,
708
+ sub_line_items: nil,
709
+ subscription_custom_fields: nil,
710
+ # Populated if the line item has a tiered price.
711
+ tier: nil,
712
+ # The unit price associated with the line item.
713
+ unit_price: nil
714
+ ); end
715
+ sig do
716
+ override
717
+ .returns(
718
+ {
719
+ credit_type: MetronomeSDK::Models::CreditTypeData,
720
+ name: String,
721
+ total: Float,
722
+ applied_commit_or_credit: MetronomeSDK::Models::V1::Customers::Invoice::LineItem::AppliedCommitOrCredit,
723
+ commit_custom_fields: T::Hash[Symbol, String],
724
+ commit_id: String,
725
+ commit_netsuite_item_id: String,
726
+ commit_netsuite_sales_order_id: String,
727
+ commit_segment_id: String,
728
+ commit_type: String,
729
+ custom_fields: T::Hash[Symbol, String],
730
+ ending_before: Time,
731
+ group_key: String,
732
+ group_value: T.nilable(String),
733
+ is_prorated: T::Boolean,
734
+ list_price: MetronomeSDK::Models::Rate,
735
+ metadata: String,
736
+ netsuite_invoice_billing_end: Time,
737
+ netsuite_invoice_billing_start: Time,
738
+ netsuite_item_id: String,
739
+ postpaid_commit: MetronomeSDK::Models::V1::Customers::Invoice::LineItem::PostpaidCommit,
740
+ presentation_group_values: T::Hash[Symbol, T.nilable(String)],
741
+ pricing_group_values: T::Hash[Symbol, String],
742
+ product_custom_fields: T::Hash[Symbol, String],
743
+ product_id: String,
744
+ product_tags: T::Array[String],
745
+ product_type: String,
746
+ professional_service_custom_fields: T::Hash[Symbol, String],
747
+ professional_service_id: String,
748
+ quantity: Float,
749
+ reseller_type: MetronomeSDK::Models::V1::Customers::Invoice::LineItem::ResellerType::TaggedSymbol,
750
+ scheduled_charge_custom_fields: T::Hash[Symbol, String],
751
+ scheduled_charge_id: String,
752
+ starting_at: Time,
753
+ sub_line_items: T::Array[MetronomeSDK::Models::V1::Customers::Invoice::LineItem::SubLineItem],
754
+ subscription_custom_fields: T::Hash[Symbol, String],
755
+ tier: MetronomeSDK::Models::V1::Customers::Invoice::LineItem::Tier,
756
+ unit_price: Float
757
+ }
758
+ )
759
+ end
760
+ def to_hash; end
761
+
762
+ class AppliedCommitOrCredit < MetronomeSDK::Internal::Type::BaseModel
763
+ sig { returns(String) }
764
+ attr_accessor :id
765
+
766
+ sig { returns(MetronomeSDK::Models::V1::Customers::Invoice::LineItem::AppliedCommitOrCredit::Type::TaggedSymbol) }
767
+ attr_accessor :type
768
+
769
+ # Details about the credit or commit that was applied to this line item. Only
770
+ # present on line items with product of `USAGE`, `SUBSCRIPTION` or `COMPOSITE`
771
+ # types.
772
+ sig do
773
+ params(
774
+ id: String,
775
+ type: MetronomeSDK::Models::V1::Customers::Invoice::LineItem::AppliedCommitOrCredit::Type::OrSymbol
776
+ )
777
+ .returns(T.attached_class)
778
+ end
779
+ def self.new(id:, type:); end
780
+
781
+ sig do
782
+ override
783
+ .returns(
784
+ {
785
+ id: String,
786
+ type: MetronomeSDK::Models::V1::Customers::Invoice::LineItem::AppliedCommitOrCredit::Type::TaggedSymbol
787
+ }
788
+ )
789
+ end
790
+ def to_hash; end
791
+
792
+ module Type
793
+ extend MetronomeSDK::Internal::Type::Enum
794
+
795
+ TaggedSymbol =
796
+ T.type_alias { T.all(Symbol, MetronomeSDK::Models::V1::Customers::Invoice::LineItem::AppliedCommitOrCredit::Type) }
797
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
798
+
799
+ PREPAID =
800
+ T.let(
801
+ :PREPAID,
802
+ MetronomeSDK::Models::V1::Customers::Invoice::LineItem::AppliedCommitOrCredit::Type::TaggedSymbol
803
+ )
804
+ POSTPAID =
805
+ T.let(
806
+ :POSTPAID,
807
+ MetronomeSDK::Models::V1::Customers::Invoice::LineItem::AppliedCommitOrCredit::Type::TaggedSymbol
808
+ )
809
+ CREDIT =
810
+ T.let(
811
+ :CREDIT,
812
+ MetronomeSDK::Models::V1::Customers::Invoice::LineItem::AppliedCommitOrCredit::Type::TaggedSymbol
813
+ )
814
+
815
+ sig do
816
+ override
817
+ .returns(
818
+ T::Array[MetronomeSDK::Models::V1::Customers::Invoice::LineItem::AppliedCommitOrCredit::Type::TaggedSymbol]
819
+ )
820
+ end
821
+ def self.values; end
822
+ end
823
+ end
824
+
825
+ class PostpaidCommit < MetronomeSDK::Internal::Type::BaseModel
826
+ sig { returns(String) }
827
+ attr_accessor :id
828
+
829
+ # Only present for line items paying for a postpaid commit true-up.
830
+ sig { params(id: String).returns(T.attached_class) }
831
+ def self.new(id:); end
832
+
833
+ sig { override.returns({id: String}) }
834
+ def to_hash; end
835
+ end
836
+
837
+ module ResellerType
838
+ extend MetronomeSDK::Internal::Type::Enum
839
+
840
+ TaggedSymbol =
841
+ T.type_alias { T.all(Symbol, MetronomeSDK::Models::V1::Customers::Invoice::LineItem::ResellerType) }
842
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
843
+
844
+ AWS = T.let(:AWS, MetronomeSDK::Models::V1::Customers::Invoice::LineItem::ResellerType::TaggedSymbol)
845
+ AWS_PRO_SERVICE =
846
+ T.let(
847
+ :AWS_PRO_SERVICE,
848
+ MetronomeSDK::Models::V1::Customers::Invoice::LineItem::ResellerType::TaggedSymbol
849
+ )
850
+ GCP = T.let(:GCP, MetronomeSDK::Models::V1::Customers::Invoice::LineItem::ResellerType::TaggedSymbol)
851
+ GCP_PRO_SERVICE =
852
+ T.let(
853
+ :GCP_PRO_SERVICE,
854
+ MetronomeSDK::Models::V1::Customers::Invoice::LineItem::ResellerType::TaggedSymbol
855
+ )
856
+
857
+ sig do
858
+ override
859
+ .returns(T::Array[MetronomeSDK::Models::V1::Customers::Invoice::LineItem::ResellerType::TaggedSymbol])
860
+ end
861
+ def self.values; end
862
+ end
863
+
864
+ class SubLineItem < MetronomeSDK::Internal::Type::BaseModel
865
+ sig { returns(T::Hash[Symbol, String]) }
866
+ attr_accessor :custom_fields
867
+
868
+ sig { returns(String) }
869
+ attr_accessor :name
870
+
871
+ sig { returns(Float) }
872
+ attr_accessor :quantity
873
+
874
+ sig { returns(Float) }
875
+ attr_accessor :subtotal
876
+
877
+ sig { returns(T.nilable(String)) }
878
+ attr_reader :charge_id
879
+
880
+ sig { params(charge_id: String).void }
881
+ attr_writer :charge_id
882
+
883
+ sig { returns(T.nilable(String)) }
884
+ attr_reader :credit_grant_id
885
+
886
+ sig { params(credit_grant_id: String).void }
887
+ attr_writer :credit_grant_id
888
+
889
+ # The end date for the charge (for seats charges only).
890
+ sig { returns(T.nilable(Time)) }
891
+ attr_reader :end_date
892
+
893
+ sig { params(end_date: Time).void }
894
+ attr_writer :end_date
895
+
896
+ # the unit price for this charge, present only if the charge is not tiered and the
897
+ # quantity is nonzero
898
+ sig { returns(T.nilable(Float)) }
899
+ attr_reader :price
900
+
901
+ sig { params(price: Float).void }
902
+ attr_writer :price
903
+
904
+ # The start date for the charge (for seats charges only).
905
+ sig { returns(T.nilable(Time)) }
906
+ attr_reader :start_date
907
+
908
+ sig { params(start_date: Time).void }
909
+ attr_writer :start_date
910
+
911
+ # when the current tier started and ends (for tiered charges only)
912
+ sig { returns(T.nilable(MetronomeSDK::Models::V1::Customers::Invoice::LineItem::SubLineItem::TierPeriod)) }
913
+ attr_reader :tier_period
914
+
915
+ sig do
916
+ params(
917
+ tier_period: T.any(
918
+ MetronomeSDK::Models::V1::Customers::Invoice::LineItem::SubLineItem::TierPeriod,
919
+ MetronomeSDK::Internal::AnyHash
920
+ )
921
+ )
922
+ .void
923
+ end
924
+ attr_writer :tier_period
925
+
926
+ sig { returns(T.nilable(T::Array[MetronomeSDK::Models::V1::Customers::Invoice::LineItem::SubLineItem::Tier])) }
927
+ attr_reader :tiers
928
+
929
+ sig do
930
+ params(
931
+ tiers: T::Array[
932
+ T.any(
933
+ MetronomeSDK::Models::V1::Customers::Invoice::LineItem::SubLineItem::Tier,
934
+ MetronomeSDK::Internal::AnyHash
935
+ )
936
+ ]
937
+ )
938
+ .void
939
+ end
940
+ attr_writer :tiers
941
+
942
+ sig do
943
+ params(
944
+ custom_fields: T::Hash[Symbol, String],
945
+ name: String,
946
+ quantity: Float,
947
+ subtotal: Float,
948
+ charge_id: String,
949
+ credit_grant_id: String,
950
+ end_date: Time,
951
+ price: Float,
952
+ start_date: Time,
953
+ tier_period: T.any(
954
+ MetronomeSDK::Models::V1::Customers::Invoice::LineItem::SubLineItem::TierPeriod,
955
+ MetronomeSDK::Internal::AnyHash
956
+ ),
957
+ tiers: T::Array[
958
+ T.any(
959
+ MetronomeSDK::Models::V1::Customers::Invoice::LineItem::SubLineItem::Tier,
960
+ MetronomeSDK::Internal::AnyHash
961
+ )
962
+ ]
963
+ )
964
+ .returns(T.attached_class)
965
+ end
966
+ def self.new(
967
+ custom_fields:,
968
+ name:,
969
+ quantity:,
970
+ subtotal:,
971
+ charge_id: nil,
972
+ credit_grant_id: nil,
973
+ # The end date for the charge (for seats charges only).
974
+ end_date: nil,
975
+ # the unit price for this charge, present only if the charge is not tiered and the
976
+ # quantity is nonzero
977
+ price: nil,
978
+ # The start date for the charge (for seats charges only).
979
+ start_date: nil,
980
+ # when the current tier started and ends (for tiered charges only)
981
+ tier_period: nil,
982
+ tiers: nil
983
+ ); end
984
+ sig do
985
+ override
986
+ .returns(
987
+ {
988
+ custom_fields: T::Hash[Symbol, String],
989
+ name: String,
990
+ quantity: Float,
991
+ subtotal: Float,
992
+ charge_id: String,
993
+ credit_grant_id: String,
994
+ end_date: Time,
995
+ price: Float,
996
+ start_date: Time,
997
+ tier_period: MetronomeSDK::Models::V1::Customers::Invoice::LineItem::SubLineItem::TierPeriod,
998
+ tiers: T::Array[MetronomeSDK::Models::V1::Customers::Invoice::LineItem::SubLineItem::Tier]
999
+ }
1000
+ )
1001
+ end
1002
+ def to_hash; end
1003
+
1004
+ class TierPeriod < MetronomeSDK::Internal::Type::BaseModel
1005
+ sig { returns(Time) }
1006
+ attr_accessor :starting_at
1007
+
1008
+ sig { returns(T.nilable(Time)) }
1009
+ attr_reader :ending_before
1010
+
1011
+ sig { params(ending_before: Time).void }
1012
+ attr_writer :ending_before
1013
+
1014
+ # when the current tier started and ends (for tiered charges only)
1015
+ sig { params(starting_at: Time, ending_before: Time).returns(T.attached_class) }
1016
+ def self.new(starting_at:, ending_before: nil); end
1017
+
1018
+ sig { override.returns({starting_at: Time, ending_before: Time}) }
1019
+ def to_hash; end
1020
+ end
1021
+
1022
+ class Tier < MetronomeSDK::Internal::Type::BaseModel
1023
+ sig { returns(Float) }
1024
+ attr_accessor :price
1025
+
1026
+ sig { returns(Float) }
1027
+ attr_accessor :quantity
1028
+
1029
+ # at what metric amount this tier begins
1030
+ sig { returns(Float) }
1031
+ attr_accessor :starting_at
1032
+
1033
+ sig { returns(Float) }
1034
+ attr_accessor :subtotal
1035
+
1036
+ sig do
1037
+ params(
1038
+ price: Float,
1039
+ quantity: Float,
1040
+ starting_at: Float,
1041
+ subtotal: Float
1042
+ ).returns(T.attached_class)
1043
+ end
1044
+ def self.new(
1045
+ price:,
1046
+ quantity:,
1047
+ # at what metric amount this tier begins
1048
+ starting_at:,
1049
+ subtotal:
1050
+ ); end
1051
+ sig { override.returns({price: Float, quantity: Float, starting_at: Float, subtotal: Float}) }
1052
+ def to_hash; end
1053
+ end
1054
+ end
1055
+
1056
+ class Tier < MetronomeSDK::Internal::Type::BaseModel
1057
+ sig { returns(Float) }
1058
+ attr_accessor :level
1059
+
1060
+ sig { returns(String) }
1061
+ attr_accessor :starting_at
1062
+
1063
+ sig { returns(T.nilable(String)) }
1064
+ attr_accessor :size
1065
+
1066
+ # Populated if the line item has a tiered price.
1067
+ sig do
1068
+ params(level: Float, starting_at: String, size: T.nilable(String)).returns(T.attached_class)
1069
+ end
1070
+ def self.new(level:, starting_at:, size: nil); end
1071
+
1072
+ sig { override.returns({level: Float, starting_at: String, size: T.nilable(String)}) }
1073
+ def to_hash; end
1074
+ end
1075
+ end
1076
+
1077
+ # This field's availability is dependent on your client's configuration.
1078
+ module BillableStatus
1079
+ extend MetronomeSDK::Internal::Type::Enum
1080
+
1081
+ TaggedSymbol =
1082
+ T.type_alias { T.all(Symbol, MetronomeSDK::Models::V1::Customers::Invoice::BillableStatus) }
1083
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
1084
+
1085
+ BILLABLE = T.let(:billable, MetronomeSDK::Models::V1::Customers::Invoice::BillableStatus::TaggedSymbol)
1086
+ UNBILLABLE =
1087
+ T.let(:unbillable, MetronomeSDK::Models::V1::Customers::Invoice::BillableStatus::TaggedSymbol)
1088
+
1089
+ sig { override.returns(T::Array[MetronomeSDK::Models::V1::Customers::Invoice::BillableStatus::TaggedSymbol]) }
1090
+ def self.values; end
1091
+ end
1092
+
1093
+ class CorrectionRecord < MetronomeSDK::Internal::Type::BaseModel
1094
+ sig { returns(String) }
1095
+ attr_accessor :corrected_invoice_id
1096
+
1097
+ sig { returns(String) }
1098
+ attr_accessor :memo
1099
+
1100
+ sig { returns(String) }
1101
+ attr_accessor :reason
1102
+
1103
+ sig do
1104
+ returns(
1105
+ T.nilable(MetronomeSDK::Models::V1::Customers::Invoice::CorrectionRecord::CorrectedExternalInvoice)
1106
+ )
1107
+ end
1108
+ attr_reader :corrected_external_invoice
1109
+
1110
+ sig do
1111
+ params(
1112
+ corrected_external_invoice: T.any(
1113
+ MetronomeSDK::Models::V1::Customers::Invoice::CorrectionRecord::CorrectedExternalInvoice,
1114
+ MetronomeSDK::Internal::AnyHash
1115
+ )
1116
+ )
1117
+ .void
1118
+ end
1119
+ attr_writer :corrected_external_invoice
1120
+
1121
+ sig do
1122
+ params(
1123
+ corrected_invoice_id: String,
1124
+ memo: String,
1125
+ reason: String,
1126
+ corrected_external_invoice: T.any(
1127
+ MetronomeSDK::Models::V1::Customers::Invoice::CorrectionRecord::CorrectedExternalInvoice,
1128
+ MetronomeSDK::Internal::AnyHash
1129
+ )
1130
+ )
1131
+ .returns(T.attached_class)
1132
+ end
1133
+ def self.new(corrected_invoice_id:, memo:, reason:, corrected_external_invoice: nil); end
1134
+
1135
+ sig do
1136
+ override
1137
+ .returns(
1138
+ {
1139
+ corrected_invoice_id: String,
1140
+ memo: String,
1141
+ reason: String,
1142
+ corrected_external_invoice: MetronomeSDK::Models::V1::Customers::Invoice::CorrectionRecord::CorrectedExternalInvoice
1143
+ }
1144
+ )
1145
+ end
1146
+ def to_hash; end
1147
+
1148
+ class CorrectedExternalInvoice < MetronomeSDK::Internal::Type::BaseModel
1149
+ sig do
1150
+ returns(
1151
+ MetronomeSDK::Models::V1::Customers::Invoice::CorrectionRecord::CorrectedExternalInvoice::BillingProviderType::TaggedSymbol
1152
+ )
1153
+ end
1154
+ attr_accessor :billing_provider_type
1155
+
1156
+ sig do
1157
+ returns(
1158
+ T.nilable(
1159
+ MetronomeSDK::Models::V1::Customers::Invoice::CorrectionRecord::CorrectedExternalInvoice::ExternalStatus::TaggedSymbol
1160
+ )
1161
+ )
1162
+ end
1163
+ attr_reader :external_status
1164
+
1165
+ sig do
1166
+ params(
1167
+ external_status: MetronomeSDK::Models::V1::Customers::Invoice::CorrectionRecord::CorrectedExternalInvoice::ExternalStatus::OrSymbol
1168
+ )
1169
+ .void
1170
+ end
1171
+ attr_writer :external_status
1172
+
1173
+ sig { returns(T.nilable(String)) }
1174
+ attr_reader :invoice_id
1175
+
1176
+ sig { params(invoice_id: String).void }
1177
+ attr_writer :invoice_id
1178
+
1179
+ sig { returns(T.nilable(Time)) }
1180
+ attr_reader :issued_at_timestamp
1181
+
1182
+ sig { params(issued_at_timestamp: Time).void }
1183
+ attr_writer :issued_at_timestamp
1184
+
1185
+ sig do
1186
+ params(
1187
+ billing_provider_type: MetronomeSDK::Models::V1::Customers::Invoice::CorrectionRecord::CorrectedExternalInvoice::BillingProviderType::OrSymbol,
1188
+ external_status: MetronomeSDK::Models::V1::Customers::Invoice::CorrectionRecord::CorrectedExternalInvoice::ExternalStatus::OrSymbol,
1189
+ invoice_id: String,
1190
+ issued_at_timestamp: Time
1191
+ )
1192
+ .returns(T.attached_class)
1193
+ end
1194
+ def self.new(
1195
+ billing_provider_type:,
1196
+ external_status: nil,
1197
+ invoice_id: nil,
1198
+ issued_at_timestamp: nil
1199
+ )
1200
+ end
1201
+
1202
+ sig do
1203
+ override
1204
+ .returns(
1205
+ {
1206
+ billing_provider_type: MetronomeSDK::Models::V1::Customers::Invoice::CorrectionRecord::CorrectedExternalInvoice::BillingProviderType::TaggedSymbol,
1207
+ external_status: MetronomeSDK::Models::V1::Customers::Invoice::CorrectionRecord::CorrectedExternalInvoice::ExternalStatus::TaggedSymbol,
1208
+ invoice_id: String,
1209
+ issued_at_timestamp: Time
1210
+ }
1211
+ )
1212
+ end
1213
+ def to_hash; end
1214
+
1215
+ module BillingProviderType
1216
+ extend MetronomeSDK::Internal::Type::Enum
1217
+
1218
+ TaggedSymbol =
1219
+ T.type_alias do
1220
+ T.all(Symbol, MetronomeSDK::Models::V1::Customers::Invoice::CorrectionRecord::CorrectedExternalInvoice::BillingProviderType)
1221
+ end
1222
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
1223
+
1224
+ AWS_MARKETPLACE =
1225
+ T.let(
1226
+ :aws_marketplace,
1227
+ MetronomeSDK::Models::V1::Customers::Invoice::CorrectionRecord::CorrectedExternalInvoice::BillingProviderType::TaggedSymbol
1228
+ )
1229
+ STRIPE =
1230
+ T.let(
1231
+ :stripe,
1232
+ MetronomeSDK::Models::V1::Customers::Invoice::CorrectionRecord::CorrectedExternalInvoice::BillingProviderType::TaggedSymbol
1233
+ )
1234
+ NETSUITE =
1235
+ T.let(
1236
+ :netsuite,
1237
+ MetronomeSDK::Models::V1::Customers::Invoice::CorrectionRecord::CorrectedExternalInvoice::BillingProviderType::TaggedSymbol
1238
+ )
1239
+ CUSTOM =
1240
+ T.let(
1241
+ :custom,
1242
+ MetronomeSDK::Models::V1::Customers::Invoice::CorrectionRecord::CorrectedExternalInvoice::BillingProviderType::TaggedSymbol
1243
+ )
1244
+ AZURE_MARKETPLACE =
1245
+ T.let(
1246
+ :azure_marketplace,
1247
+ MetronomeSDK::Models::V1::Customers::Invoice::CorrectionRecord::CorrectedExternalInvoice::BillingProviderType::TaggedSymbol
1248
+ )
1249
+ QUICKBOOKS_ONLINE =
1250
+ T.let(
1251
+ :quickbooks_online,
1252
+ MetronomeSDK::Models::V1::Customers::Invoice::CorrectionRecord::CorrectedExternalInvoice::BillingProviderType::TaggedSymbol
1253
+ )
1254
+ WORKDAY =
1255
+ T.let(
1256
+ :workday,
1257
+ MetronomeSDK::Models::V1::Customers::Invoice::CorrectionRecord::CorrectedExternalInvoice::BillingProviderType::TaggedSymbol
1258
+ )
1259
+ GCP_MARKETPLACE =
1260
+ T.let(
1261
+ :gcp_marketplace,
1262
+ MetronomeSDK::Models::V1::Customers::Invoice::CorrectionRecord::CorrectedExternalInvoice::BillingProviderType::TaggedSymbol
1263
+ )
1264
+
1265
+ sig do
1266
+ override
1267
+ .returns(
1268
+ T::Array[
1269
+ MetronomeSDK::Models::V1::Customers::Invoice::CorrectionRecord::CorrectedExternalInvoice::BillingProviderType::TaggedSymbol
1270
+ ]
1271
+ )
1272
+ end
1273
+ def self.values; end
1274
+ end
1275
+
1276
+ module ExternalStatus
1277
+ extend MetronomeSDK::Internal::Type::Enum
1278
+
1279
+ TaggedSymbol =
1280
+ T.type_alias do
1281
+ T.all(Symbol, MetronomeSDK::Models::V1::Customers::Invoice::CorrectionRecord::CorrectedExternalInvoice::ExternalStatus)
1282
+ end
1283
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
1284
+
1285
+ DRAFT =
1286
+ T.let(
1287
+ :DRAFT,
1288
+ MetronomeSDK::Models::V1::Customers::Invoice::CorrectionRecord::CorrectedExternalInvoice::ExternalStatus::TaggedSymbol
1289
+ )
1290
+ FINALIZED =
1291
+ T.let(
1292
+ :FINALIZED,
1293
+ MetronomeSDK::Models::V1::Customers::Invoice::CorrectionRecord::CorrectedExternalInvoice::ExternalStatus::TaggedSymbol
1294
+ )
1295
+ PAID =
1296
+ T.let(
1297
+ :PAID,
1298
+ MetronomeSDK::Models::V1::Customers::Invoice::CorrectionRecord::CorrectedExternalInvoice::ExternalStatus::TaggedSymbol
1299
+ )
1300
+ UNCOLLECTIBLE =
1301
+ T.let(
1302
+ :UNCOLLECTIBLE,
1303
+ MetronomeSDK::Models::V1::Customers::Invoice::CorrectionRecord::CorrectedExternalInvoice::ExternalStatus::TaggedSymbol
1304
+ )
1305
+ VOID =
1306
+ T.let(
1307
+ :VOID,
1308
+ MetronomeSDK::Models::V1::Customers::Invoice::CorrectionRecord::CorrectedExternalInvoice::ExternalStatus::TaggedSymbol
1309
+ )
1310
+ DELETED =
1311
+ T.let(
1312
+ :DELETED,
1313
+ MetronomeSDK::Models::V1::Customers::Invoice::CorrectionRecord::CorrectedExternalInvoice::ExternalStatus::TaggedSymbol
1314
+ )
1315
+ PAYMENT_FAILED =
1316
+ T.let(
1317
+ :PAYMENT_FAILED,
1318
+ MetronomeSDK::Models::V1::Customers::Invoice::CorrectionRecord::CorrectedExternalInvoice::ExternalStatus::TaggedSymbol
1319
+ )
1320
+ INVALID_REQUEST_ERROR =
1321
+ T.let(
1322
+ :INVALID_REQUEST_ERROR,
1323
+ MetronomeSDK::Models::V1::Customers::Invoice::CorrectionRecord::CorrectedExternalInvoice::ExternalStatus::TaggedSymbol
1324
+ )
1325
+ SKIPPED =
1326
+ T.let(
1327
+ :SKIPPED,
1328
+ MetronomeSDK::Models::V1::Customers::Invoice::CorrectionRecord::CorrectedExternalInvoice::ExternalStatus::TaggedSymbol
1329
+ )
1330
+ SENT =
1331
+ T.let(
1332
+ :SENT,
1333
+ MetronomeSDK::Models::V1::Customers::Invoice::CorrectionRecord::CorrectedExternalInvoice::ExternalStatus::TaggedSymbol
1334
+ )
1335
+ QUEUED =
1336
+ T.let(
1337
+ :QUEUED,
1338
+ MetronomeSDK::Models::V1::Customers::Invoice::CorrectionRecord::CorrectedExternalInvoice::ExternalStatus::TaggedSymbol
1339
+ )
1340
+
1341
+ sig do
1342
+ override
1343
+ .returns(
1344
+ T::Array[
1345
+ MetronomeSDK::Models::V1::Customers::Invoice::CorrectionRecord::CorrectedExternalInvoice::ExternalStatus::TaggedSymbol
1346
+ ]
1347
+ )
1348
+ end
1349
+ def self.values; end
1350
+ end
1351
+ end
1352
+ end
1353
+
1354
+ class ExternalInvoice < MetronomeSDK::Internal::Type::BaseModel
1355
+ sig { returns(MetronomeSDK::Models::V1::Customers::Invoice::ExternalInvoice::BillingProviderType::TaggedSymbol) }
1356
+ attr_accessor :billing_provider_type
1357
+
1358
+ sig do
1359
+ returns(
1360
+ T.nilable(MetronomeSDK::Models::V1::Customers::Invoice::ExternalInvoice::ExternalStatus::TaggedSymbol)
1361
+ )
1362
+ end
1363
+ attr_reader :external_status
1364
+
1365
+ sig do
1366
+ params(
1367
+ external_status: MetronomeSDK::Models::V1::Customers::Invoice::ExternalInvoice::ExternalStatus::OrSymbol
1368
+ )
1369
+ .void
1370
+ end
1371
+ attr_writer :external_status
1372
+
1373
+ sig { returns(T.nilable(String)) }
1374
+ attr_reader :invoice_id
1375
+
1376
+ sig { params(invoice_id: String).void }
1377
+ attr_writer :invoice_id
1378
+
1379
+ sig { returns(T.nilable(Time)) }
1380
+ attr_reader :issued_at_timestamp
1381
+
1382
+ sig { params(issued_at_timestamp: Time).void }
1383
+ attr_writer :issued_at_timestamp
1384
+
1385
+ sig do
1386
+ params(
1387
+ billing_provider_type: MetronomeSDK::Models::V1::Customers::Invoice::ExternalInvoice::BillingProviderType::OrSymbol,
1388
+ external_status: MetronomeSDK::Models::V1::Customers::Invoice::ExternalInvoice::ExternalStatus::OrSymbol,
1389
+ invoice_id: String,
1390
+ issued_at_timestamp: Time
1391
+ )
1392
+ .returns(T.attached_class)
1393
+ end
1394
+ def self.new(
1395
+ billing_provider_type:,
1396
+ external_status: nil,
1397
+ invoice_id: nil,
1398
+ issued_at_timestamp: nil
1399
+ )
1400
+ end
1401
+
1402
+ sig do
1403
+ override
1404
+ .returns(
1405
+ {
1406
+ billing_provider_type: MetronomeSDK::Models::V1::Customers::Invoice::ExternalInvoice::BillingProviderType::TaggedSymbol,
1407
+ external_status: MetronomeSDK::Models::V1::Customers::Invoice::ExternalInvoice::ExternalStatus::TaggedSymbol,
1408
+ invoice_id: String,
1409
+ issued_at_timestamp: Time
1410
+ }
1411
+ )
1412
+ end
1413
+ def to_hash; end
1414
+
1415
+ module BillingProviderType
1416
+ extend MetronomeSDK::Internal::Type::Enum
1417
+
1418
+ TaggedSymbol =
1419
+ T.type_alias { T.all(Symbol, MetronomeSDK::Models::V1::Customers::Invoice::ExternalInvoice::BillingProviderType) }
1420
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
1421
+
1422
+ AWS_MARKETPLACE =
1423
+ T.let(
1424
+ :aws_marketplace,
1425
+ MetronomeSDK::Models::V1::Customers::Invoice::ExternalInvoice::BillingProviderType::TaggedSymbol
1426
+ )
1427
+ STRIPE =
1428
+ T.let(
1429
+ :stripe,
1430
+ MetronomeSDK::Models::V1::Customers::Invoice::ExternalInvoice::BillingProviderType::TaggedSymbol
1431
+ )
1432
+ NETSUITE =
1433
+ T.let(
1434
+ :netsuite,
1435
+ MetronomeSDK::Models::V1::Customers::Invoice::ExternalInvoice::BillingProviderType::TaggedSymbol
1436
+ )
1437
+ CUSTOM =
1438
+ T.let(
1439
+ :custom,
1440
+ MetronomeSDK::Models::V1::Customers::Invoice::ExternalInvoice::BillingProviderType::TaggedSymbol
1441
+ )
1442
+ AZURE_MARKETPLACE =
1443
+ T.let(
1444
+ :azure_marketplace,
1445
+ MetronomeSDK::Models::V1::Customers::Invoice::ExternalInvoice::BillingProviderType::TaggedSymbol
1446
+ )
1447
+ QUICKBOOKS_ONLINE =
1448
+ T.let(
1449
+ :quickbooks_online,
1450
+ MetronomeSDK::Models::V1::Customers::Invoice::ExternalInvoice::BillingProviderType::TaggedSymbol
1451
+ )
1452
+ WORKDAY =
1453
+ T.let(
1454
+ :workday,
1455
+ MetronomeSDK::Models::V1::Customers::Invoice::ExternalInvoice::BillingProviderType::TaggedSymbol
1456
+ )
1457
+ GCP_MARKETPLACE =
1458
+ T.let(
1459
+ :gcp_marketplace,
1460
+ MetronomeSDK::Models::V1::Customers::Invoice::ExternalInvoice::BillingProviderType::TaggedSymbol
1461
+ )
1462
+
1463
+ sig do
1464
+ override
1465
+ .returns(
1466
+ T::Array[MetronomeSDK::Models::V1::Customers::Invoice::ExternalInvoice::BillingProviderType::TaggedSymbol]
1467
+ )
1468
+ end
1469
+ def self.values; end
1470
+ end
1471
+
1472
+ module ExternalStatus
1473
+ extend MetronomeSDK::Internal::Type::Enum
1474
+
1475
+ TaggedSymbol =
1476
+ T.type_alias { T.all(Symbol, MetronomeSDK::Models::V1::Customers::Invoice::ExternalInvoice::ExternalStatus) }
1477
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
1478
+
1479
+ DRAFT =
1480
+ T.let(:DRAFT, MetronomeSDK::Models::V1::Customers::Invoice::ExternalInvoice::ExternalStatus::TaggedSymbol)
1481
+ FINALIZED =
1482
+ T.let(
1483
+ :FINALIZED,
1484
+ MetronomeSDK::Models::V1::Customers::Invoice::ExternalInvoice::ExternalStatus::TaggedSymbol
1485
+ )
1486
+ PAID =
1487
+ T.let(:PAID, MetronomeSDK::Models::V1::Customers::Invoice::ExternalInvoice::ExternalStatus::TaggedSymbol)
1488
+ UNCOLLECTIBLE =
1489
+ T.let(
1490
+ :UNCOLLECTIBLE,
1491
+ MetronomeSDK::Models::V1::Customers::Invoice::ExternalInvoice::ExternalStatus::TaggedSymbol
1492
+ )
1493
+ VOID =
1494
+ T.let(:VOID, MetronomeSDK::Models::V1::Customers::Invoice::ExternalInvoice::ExternalStatus::TaggedSymbol)
1495
+ DELETED =
1496
+ T.let(
1497
+ :DELETED,
1498
+ MetronomeSDK::Models::V1::Customers::Invoice::ExternalInvoice::ExternalStatus::TaggedSymbol
1499
+ )
1500
+ PAYMENT_FAILED =
1501
+ T.let(
1502
+ :PAYMENT_FAILED,
1503
+ MetronomeSDK::Models::V1::Customers::Invoice::ExternalInvoice::ExternalStatus::TaggedSymbol
1504
+ )
1505
+ INVALID_REQUEST_ERROR =
1506
+ T.let(
1507
+ :INVALID_REQUEST_ERROR,
1508
+ MetronomeSDK::Models::V1::Customers::Invoice::ExternalInvoice::ExternalStatus::TaggedSymbol
1509
+ )
1510
+ SKIPPED =
1511
+ T.let(
1512
+ :SKIPPED,
1513
+ MetronomeSDK::Models::V1::Customers::Invoice::ExternalInvoice::ExternalStatus::TaggedSymbol
1514
+ )
1515
+ SENT =
1516
+ T.let(:SENT, MetronomeSDK::Models::V1::Customers::Invoice::ExternalInvoice::ExternalStatus::TaggedSymbol)
1517
+ QUEUED =
1518
+ T.let(
1519
+ :QUEUED,
1520
+ MetronomeSDK::Models::V1::Customers::Invoice::ExternalInvoice::ExternalStatus::TaggedSymbol
1521
+ )
1522
+
1523
+ sig do
1524
+ override
1525
+ .returns(
1526
+ T::Array[MetronomeSDK::Models::V1::Customers::Invoice::ExternalInvoice::ExternalStatus::TaggedSymbol]
1527
+ )
1528
+ end
1529
+ def self.values; end
1530
+ end
1531
+ end
1532
+
1533
+ class InvoiceAdjustment < MetronomeSDK::Internal::Type::BaseModel
1534
+ sig { returns(MetronomeSDK::Models::CreditTypeData) }
1535
+ attr_reader :credit_type
1536
+
1537
+ sig { params(credit_type: T.any(MetronomeSDK::Models::CreditTypeData, MetronomeSDK::Internal::AnyHash)).void }
1538
+ attr_writer :credit_type
1539
+
1540
+ sig { returns(String) }
1541
+ attr_accessor :name
1542
+
1543
+ sig { returns(Float) }
1544
+ attr_accessor :total
1545
+
1546
+ sig { returns(T.nilable(T::Hash[Symbol, String])) }
1547
+ attr_reader :credit_grant_custom_fields
1548
+
1549
+ sig { params(credit_grant_custom_fields: T::Hash[Symbol, String]).void }
1550
+ attr_writer :credit_grant_custom_fields
1551
+
1552
+ sig { returns(T.nilable(String)) }
1553
+ attr_reader :credit_grant_id
1554
+
1555
+ sig { params(credit_grant_id: String).void }
1556
+ attr_writer :credit_grant_id
1557
+
1558
+ sig do
1559
+ params(
1560
+ credit_type: T.any(MetronomeSDK::Models::CreditTypeData, MetronomeSDK::Internal::AnyHash),
1561
+ name: String,
1562
+ total: Float,
1563
+ credit_grant_custom_fields: T::Hash[Symbol, String],
1564
+ credit_grant_id: String
1565
+ )
1566
+ .returns(T.attached_class)
1567
+ end
1568
+ def self.new(credit_type:, name:, total:, credit_grant_custom_fields: nil, credit_grant_id: nil)
1569
+ end
1570
+
1571
+ sig do
1572
+ override
1573
+ .returns(
1574
+ {
1575
+ credit_type: MetronomeSDK::Models::CreditTypeData,
1576
+ name: String,
1577
+ total: Float,
1578
+ credit_grant_custom_fields: T::Hash[Symbol, String],
1579
+ credit_grant_id: String
1580
+ }
1581
+ )
1582
+ end
1583
+ def to_hash; end
1584
+ end
1585
+
1586
+ class ResellerRoyalty < MetronomeSDK::Internal::Type::BaseModel
1587
+ sig { returns(String) }
1588
+ attr_accessor :fraction
1589
+
1590
+ sig { returns(String) }
1591
+ attr_accessor :netsuite_reseller_id
1592
+
1593
+ sig { returns(MetronomeSDK::Models::V1::Customers::Invoice::ResellerRoyalty::ResellerType::TaggedSymbol) }
1594
+ attr_accessor :reseller_type
1595
+
1596
+ sig { returns(T.nilable(MetronomeSDK::Models::V1::Customers::Invoice::ResellerRoyalty::AwsOptions)) }
1597
+ attr_reader :aws_options
1598
+
1599
+ sig do
1600
+ params(
1601
+ aws_options: T.any(
1602
+ MetronomeSDK::Models::V1::Customers::Invoice::ResellerRoyalty::AwsOptions,
1603
+ MetronomeSDK::Internal::AnyHash
1604
+ )
1605
+ )
1606
+ .void
1607
+ end
1608
+ attr_writer :aws_options
1609
+
1610
+ sig { returns(T.nilable(MetronomeSDK::Models::V1::Customers::Invoice::ResellerRoyalty::GcpOptions)) }
1611
+ attr_reader :gcp_options
1612
+
1613
+ sig do
1614
+ params(
1615
+ gcp_options: T.any(
1616
+ MetronomeSDK::Models::V1::Customers::Invoice::ResellerRoyalty::GcpOptions,
1617
+ MetronomeSDK::Internal::AnyHash
1618
+ )
1619
+ )
1620
+ .void
1621
+ end
1622
+ attr_writer :gcp_options
1623
+
1624
+ # Only present for contract invoices with reseller royalties.
1625
+ sig do
1626
+ params(
1627
+ fraction: String,
1628
+ netsuite_reseller_id: String,
1629
+ reseller_type: MetronomeSDK::Models::V1::Customers::Invoice::ResellerRoyalty::ResellerType::OrSymbol,
1630
+ aws_options: T.any(
1631
+ MetronomeSDK::Models::V1::Customers::Invoice::ResellerRoyalty::AwsOptions,
1632
+ MetronomeSDK::Internal::AnyHash
1633
+ ),
1634
+ gcp_options: T.any(
1635
+ MetronomeSDK::Models::V1::Customers::Invoice::ResellerRoyalty::GcpOptions,
1636
+ MetronomeSDK::Internal::AnyHash
1637
+ )
1638
+ )
1639
+ .returns(T.attached_class)
1640
+ end
1641
+ def self.new(
1642
+ fraction:,
1643
+ netsuite_reseller_id:,
1644
+ reseller_type:,
1645
+ aws_options: nil,
1646
+ gcp_options: nil
1647
+ )
1648
+ end
1649
+
1650
+ sig do
1651
+ override
1652
+ .returns(
1653
+ {
1654
+ fraction: String,
1655
+ netsuite_reseller_id: String,
1656
+ reseller_type: MetronomeSDK::Models::V1::Customers::Invoice::ResellerRoyalty::ResellerType::TaggedSymbol,
1657
+ aws_options: MetronomeSDK::Models::V1::Customers::Invoice::ResellerRoyalty::AwsOptions,
1658
+ gcp_options: MetronomeSDK::Models::V1::Customers::Invoice::ResellerRoyalty::GcpOptions
1659
+ }
1660
+ )
1661
+ end
1662
+ def to_hash; end
1663
+
1664
+ module ResellerType
1665
+ extend MetronomeSDK::Internal::Type::Enum
1666
+
1667
+ TaggedSymbol =
1668
+ T.type_alias { T.all(Symbol, MetronomeSDK::Models::V1::Customers::Invoice::ResellerRoyalty::ResellerType) }
1669
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
1670
+
1671
+ AWS =
1672
+ T.let(:AWS, MetronomeSDK::Models::V1::Customers::Invoice::ResellerRoyalty::ResellerType::TaggedSymbol)
1673
+ AWS_PRO_SERVICE =
1674
+ T.let(
1675
+ :AWS_PRO_SERVICE,
1676
+ MetronomeSDK::Models::V1::Customers::Invoice::ResellerRoyalty::ResellerType::TaggedSymbol
1677
+ )
1678
+ GCP =
1679
+ T.let(:GCP, MetronomeSDK::Models::V1::Customers::Invoice::ResellerRoyalty::ResellerType::TaggedSymbol)
1680
+ GCP_PRO_SERVICE =
1681
+ T.let(
1682
+ :GCP_PRO_SERVICE,
1683
+ MetronomeSDK::Models::V1::Customers::Invoice::ResellerRoyalty::ResellerType::TaggedSymbol
1684
+ )
1685
+
1686
+ sig do
1687
+ override
1688
+ .returns(
1689
+ T::Array[MetronomeSDK::Models::V1::Customers::Invoice::ResellerRoyalty::ResellerType::TaggedSymbol]
1690
+ )
1691
+ end
1692
+ def self.values; end
1693
+ end
1694
+
1695
+ class AwsOptions < MetronomeSDK::Internal::Type::BaseModel
1696
+ sig { returns(T.nilable(String)) }
1697
+ attr_reader :aws_account_number
1698
+
1699
+ sig { params(aws_account_number: String).void }
1700
+ attr_writer :aws_account_number
1701
+
1702
+ sig { returns(T.nilable(String)) }
1703
+ attr_reader :aws_offer_id
1704
+
1705
+ sig { params(aws_offer_id: String).void }
1706
+ attr_writer :aws_offer_id
1707
+
1708
+ sig { returns(T.nilable(String)) }
1709
+ attr_reader :aws_payer_reference_id
1710
+
1711
+ sig { params(aws_payer_reference_id: String).void }
1712
+ attr_writer :aws_payer_reference_id
1713
+
1714
+ sig do
1715
+ params(aws_account_number: String, aws_offer_id: String, aws_payer_reference_id: String)
1716
+ .returns(T.attached_class)
1717
+ end
1718
+ def self.new(aws_account_number: nil, aws_offer_id: nil, aws_payer_reference_id: nil); end
1719
+
1720
+ sig do
1721
+ override.returns(
1722
+ {
1723
+ aws_account_number: String,
1724
+ aws_offer_id: String,
1725
+ aws_payer_reference_id: String
1726
+ }
1727
+ )
1728
+ end
1729
+ def to_hash; end
1730
+ end
1731
+
1732
+ class GcpOptions < MetronomeSDK::Internal::Type::BaseModel
1733
+ sig { returns(T.nilable(String)) }
1734
+ attr_reader :gcp_account_id
1735
+
1736
+ sig { params(gcp_account_id: String).void }
1737
+ attr_writer :gcp_account_id
1738
+
1739
+ sig { returns(T.nilable(String)) }
1740
+ attr_reader :gcp_offer_id
1741
+
1742
+ sig { params(gcp_offer_id: String).void }
1743
+ attr_writer :gcp_offer_id
1744
+
1745
+ sig { params(gcp_account_id: String, gcp_offer_id: String).returns(T.attached_class) }
1746
+ def self.new(gcp_account_id: nil, gcp_offer_id: nil); end
1747
+
1748
+ sig { override.returns({gcp_account_id: String, gcp_offer_id: String}) }
1749
+ def to_hash; end
1750
+ end
1751
+ end
1752
+ end
1753
+ end
1754
+ end
1755
+ end
1756
+ end