metronome-sdk 0.1.0.pre.alpha.3 → 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +56 -0
- data/README.md +1 -1
- data/lib/metronome_sdk/errors.rb +22 -0
- data/lib/metronome_sdk/internal/cursor_page.rb +1 -1
- data/lib/metronome_sdk/internal/transport/base_client.rb +10 -2
- data/lib/metronome_sdk/internal/type/array_of.rb +6 -1
- data/lib/metronome_sdk/internal/type/base_model.rb +82 -26
- data/lib/metronome_sdk/internal/type/boolean.rb +7 -1
- data/lib/metronome_sdk/internal/type/converter.rb +42 -34
- data/lib/metronome_sdk/internal/type/enum.rb +16 -5
- data/lib/metronome_sdk/internal/type/file_input.rb +6 -1
- data/lib/metronome_sdk/internal/type/hash_of.rb +6 -1
- data/lib/metronome_sdk/internal/type/union.rb +17 -9
- data/lib/metronome_sdk/internal/type/unknown.rb +7 -1
- data/lib/metronome_sdk/internal/util.rb +8 -9
- data/lib/metronome_sdk/models/base_usage_filter.rb +27 -0
- data/lib/metronome_sdk/models/commit.rb +1053 -0
- data/lib/metronome_sdk/models/contract_without_amendments.rb +2043 -0
- data/lib/metronome_sdk/models/credit.rb +677 -0
- data/lib/metronome_sdk/models/credit_type_data.rb +21 -0
- data/lib/metronome_sdk/models/discount.rb +68 -0
- data/lib/metronome_sdk/models/event_type_filter.rb +33 -0
- data/lib/metronome_sdk/models/id.rb +15 -0
- data/lib/metronome_sdk/models/override.rb +381 -0
- data/lib/metronome_sdk/models/pro_service.rb +73 -0
- data/lib/metronome_sdk/models/property_filter.rb +52 -0
- data/lib/metronome_sdk/models/rate.rb +101 -0
- data/lib/metronome_sdk/models/schedule_duration.rb +50 -0
- data/lib/metronome_sdk/models/schedule_point_in_time.rb +62 -0
- data/lib/metronome_sdk/models/scheduled_charge.rb +76 -0
- data/lib/metronome_sdk/models/tier.rb +21 -0
- data/lib/metronome_sdk/models/v1/alert_archive_response.rb +3 -14
- data/lib/metronome_sdk/models/v1/alert_create_params.rb +4 -1
- data/lib/metronome_sdk/models/v1/alert_create_response.rb +3 -14
- data/lib/metronome_sdk/models/v1/billable_metric_archive_params.rb +2 -8
- data/lib/metronome_sdk/models/v1/billable_metric_archive_response.rb +3 -14
- data/lib/metronome_sdk/models/v1/billable_metric_create_params.rb +6 -86
- data/lib/metronome_sdk/models/v1/billable_metric_create_response.rb +3 -14
- data/lib/metronome_sdk/models/v1/billable_metric_list_response.rb +6 -85
- data/lib/metronome_sdk/models/v1/billable_metric_retrieve_response.rb +8 -85
- data/lib/metronome_sdk/models/v1/contract_amend_params.rb +312 -35
- data/lib/metronome_sdk/models/v1/contract_amend_response.rb +3 -14
- data/lib/metronome_sdk/models/v1/contract_archive_response.rb +3 -14
- data/lib/metronome_sdk/models/v1/contract_create_historical_invoices_response.rb +3 -1276
- data/lib/metronome_sdk/models/v1/contract_create_params.rb +792 -104
- data/lib/metronome_sdk/models/v1/contract_create_response.rb +3 -14
- data/lib/metronome_sdk/models/v1/contract_list_balances_params.rb +9 -1
- data/lib/metronome_sdk/models/v1/contract_list_balances_response.rb +5 -1645
- data/lib/metronome_sdk/models/v1/contract_list_response.rb +253 -10692
- data/lib/metronome_sdk/models/v1/contract_retrieve_rate_schedule_response.rb +9 -295
- data/lib/metronome_sdk/models/v1/contract_retrieve_response.rb +254 -10721
- data/lib/metronome_sdk/models/v1/contract_schedule_pro_services_invoice_response.rb +3 -1276
- data/lib/metronome_sdk/models/v1/contract_update_end_date_response.rb +3 -14
- data/lib/metronome_sdk/models/v1/contracts/product_archive_response.rb +3 -14
- data/lib/metronome_sdk/models/v1/contracts/product_create_params.rb +6 -97
- data/lib/metronome_sdk/models/v1/contracts/product_create_response.rb +3 -14
- data/lib/metronome_sdk/models/v1/contracts/product_list_item_state.rb +148 -0
- data/lib/metronome_sdk/models/v1/contracts/product_list_response.rb +12 -561
- data/lib/metronome_sdk/models/v1/contracts/product_retrieve_params.rb +2 -8
- data/lib/metronome_sdk/models/v1/contracts/product_retrieve_response.rb +14 -559
- data/lib/metronome_sdk/models/v1/contracts/product_update_params.rb +6 -97
- data/lib/metronome_sdk/models/v1/contracts/product_update_response.rb +3 -14
- data/lib/metronome_sdk/models/v1/contracts/quantity_conversion.rb +57 -0
- data/lib/metronome_sdk/models/v1/contracts/quantity_rounding.rb +45 -0
- data/lib/metronome_sdk/models/v1/contracts/rate_card_archive_params.rb +2 -8
- data/lib/metronome_sdk/models/v1/contracts/rate_card_archive_response.rb +3 -14
- data/lib/metronome_sdk/models/v1/contracts/rate_card_create_response.rb +3 -14
- data/lib/metronome_sdk/models/v1/contracts/rate_card_list_response.rb +6 -42
- data/lib/metronome_sdk/models/v1/contracts/rate_card_retrieve_params.rb +2 -8
- data/lib/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_response.rb +6 -159
- data/lib/metronome_sdk/models/v1/contracts/rate_card_retrieve_response.rb +6 -42
- data/lib/metronome_sdk/models/v1/contracts/rate_card_update_response.rb +3 -14
- data/lib/metronome_sdk/models/v1/contracts/rate_cards/product_order_set_response.rb +3 -14
- data/lib/metronome_sdk/models/v1/contracts/rate_cards/product_order_update_response.rb +3 -14
- data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_params.rb +6 -44
- data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_response.rb +3 -16
- data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_add_params.rb +6 -44
- data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_add_response.rb +9 -61
- data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_list_response.rb +6 -158
- data/lib/metronome_sdk/models/v1/credit_grant_create_params.rb +5 -77
- data/lib/metronome_sdk/models/v1/credit_grant_create_response.rb +3 -14
- data/lib/metronome_sdk/models/v1/credit_grant_edit_response.rb +3 -14
- data/lib/metronome_sdk/models/v1/credit_grant_list_entries_params.rb +20 -1
- data/lib/metronome_sdk/models/v1/credit_grant_list_entries_response.rb +11 -153
- data/lib/metronome_sdk/models/v1/credit_grant_list_response.rb +14 -175
- data/lib/metronome_sdk/models/v1/credit_grant_void_response.rb +3 -14
- data/lib/metronome_sdk/models/v1/credit_ledger_entry.rb +69 -0
- data/lib/metronome_sdk/models/v1/customer.rb +53 -0
- data/lib/metronome_sdk/models/v1/customer_archive_params.rb +2 -8
- data/lib/metronome_sdk/models/v1/customer_archive_response.rb +3 -14
- data/lib/metronome_sdk/models/v1/customer_create_response.rb +3 -50
- data/lib/metronome_sdk/models/v1/{customer_list_response.rb → customer_detail.rb} +14 -15
- data/lib/metronome_sdk/models/v1/customer_list_billable_metrics_response.rb +6 -86
- data/lib/metronome_sdk/models/v1/customer_preview_events_params.rb +115 -0
- data/lib/metronome_sdk/models/v1/customer_preview_events_response.rb +18 -0
- data/lib/metronome_sdk/models/v1/customer_retrieve_response.rb +3 -126
- data/lib/metronome_sdk/models/v1/customer_set_name_response.rb +3 -50
- data/lib/metronome_sdk/models/v1/customers/alert_list_response.rb +5 -276
- data/lib/metronome_sdk/models/v1/customers/alert_retrieve_response.rb +3 -279
- data/lib/metronome_sdk/models/v1/customers/billing_config_retrieve_response.rb +9 -1
- data/lib/metronome_sdk/models/v1/customers/commit_create_params.rb +8 -6
- data/lib/metronome_sdk/models/v1/customers/commit_create_response.rb +3 -14
- data/lib/metronome_sdk/models/v1/customers/commit_list_params.rb +9 -1
- data/lib/metronome_sdk/models/v1/customers/commit_list_response.rb +3 -1047
- data/lib/metronome_sdk/models/v1/customers/commit_update_end_date_response.rb +3 -14
- data/lib/metronome_sdk/models/v1/customers/credit_create_response.rb +3 -14
- data/lib/metronome_sdk/models/v1/customers/credit_list_params.rb +9 -1
- data/lib/metronome_sdk/models/v1/customers/credit_list_response.rb +3 -593
- data/lib/metronome_sdk/models/v1/customers/credit_update_end_date_response.rb +3 -14
- data/lib/metronome_sdk/models/v1/customers/customer_alert.rb +270 -0
- data/lib/metronome_sdk/models/v1/customers/{invoice_list_response.rb → invoice.rb} +119 -303
- data/lib/metronome_sdk/models/v1/customers/invoice_list_breakdowns_response.rb +2 -1271
- data/lib/metronome_sdk/models/v1/customers/invoice_retrieve_response.rb +3 -1276
- data/lib/metronome_sdk/models/v1/customers/plan_add_response.rb +3 -14
- data/lib/metronome_sdk/models/v1/customers/plan_list_response.rb +3 -21
- data/lib/metronome_sdk/models/v1/dashboard_get_embeddable_url_params.rb +1 -0
- data/lib/metronome_sdk/models/v1/plan_detail.rb +200 -0
- data/lib/metronome_sdk/models/v1/plan_get_details_response.rb +3 -286
- data/lib/metronome_sdk/models/v1/plan_list_charges_response.rb +3 -20
- data/lib/metronome_sdk/models/v1/plan_list_customers_response.rb +3 -128
- data/lib/metronome_sdk/models/v1/rollover_amount_max_amount.rb +38 -0
- data/lib/metronome_sdk/models/v1/rollover_amount_max_percentage.rb +38 -0
- data/lib/metronome_sdk/models/v1/usage_search_params.rb +24 -0
- data/lib/metronome_sdk/models/v1/usage_search_response.rb +249 -0
- data/lib/metronome_sdk/models/v2/contract_edit_commit_params.rb +11 -8
- data/lib/metronome_sdk/models/v2/contract_edit_commit_response.rb +3 -14
- data/lib/metronome_sdk/models/v2/contract_edit_credit_params.rb +3 -2
- data/lib/metronome_sdk/models/v2/contract_edit_credit_response.rb +3 -14
- data/lib/metronome_sdk/models/v2/contract_edit_params.rb +1127 -105
- data/lib/metronome_sdk/models/v2/contract_edit_response.rb +3 -14
- data/lib/metronome_sdk/models/v2/contract_get_edit_history_response.rb +577 -643
- data/lib/metronome_sdk/models/v2/contract_list_response.rb +917 -746
- data/lib/metronome_sdk/models/v2/contract_retrieve_response.rb +917 -748
- data/lib/metronome_sdk/models.rb +36 -4
- data/lib/metronome_sdk/resources/v1/alerts.rb +1 -1
- data/lib/metronome_sdk/resources/v1/billable_metrics.rb +2 -2
- data/lib/metronome_sdk/resources/v1/contracts/products.rb +4 -4
- data/lib/metronome_sdk/resources/v1/contracts/rate_cards/rates.rb +1 -1
- data/lib/metronome_sdk/resources/v1/contracts.rb +11 -5
- data/lib/metronome_sdk/resources/v1/credit_grants.rb +4 -2
- data/lib/metronome_sdk/resources/v1/customers/commits.rb +5 -3
- data/lib/metronome_sdk/resources/v1/customers/credits.rb +3 -1
- data/lib/metronome_sdk/resources/v1/customers/invoices.rb +2 -2
- data/lib/metronome_sdk/resources/v1/customers.rb +40 -2
- data/lib/metronome_sdk/resources/v1/usage.rb +25 -0
- data/lib/metronome_sdk/resources/v2/contracts.rb +11 -9
- data/lib/metronome_sdk/version.rb +1 -1
- data/lib/metronome_sdk.rb +31 -2
- data/rbi/metronome_sdk/errors.rbi +16 -0
- data/rbi/metronome_sdk/internal/type/boolean.rbi +2 -0
- data/rbi/metronome_sdk/internal/type/converter.rbi +15 -15
- data/rbi/metronome_sdk/internal/type/union.rbi +5 -0
- data/rbi/metronome_sdk/internal/type/unknown.rbi +2 -0
- data/rbi/metronome_sdk/internal/util.rbi +2 -0
- data/rbi/metronome_sdk/models/base_usage_filter.rbi +46 -0
- data/rbi/metronome_sdk/models/commit.rbi +2046 -0
- data/rbi/metronome_sdk/models/contract_without_amendments.rbi +4260 -0
- data/rbi/metronome_sdk/models/credit.rbi +1314 -0
- data/rbi/metronome_sdk/models/credit_type_data.rbi +26 -0
- data/rbi/metronome_sdk/models/discount.rbi +106 -0
- data/rbi/metronome_sdk/models/event_type_filter.rbi +57 -0
- data/rbi/metronome_sdk/models/id.rbi +23 -0
- data/rbi/metronome_sdk/models/override.rbi +675 -0
- data/rbi/metronome_sdk/models/pro_service.rbi +98 -0
- data/rbi/metronome_sdk/models/property_filter.rbi +88 -0
- data/rbi/metronome_sdk/models/rate.rbi +155 -0
- data/rbi/metronome_sdk/models/schedule_duration.rbi +89 -0
- data/rbi/metronome_sdk/models/schedule_point_in_time.rbi +121 -0
- data/rbi/metronome_sdk/models/scheduled_charge.rbi +119 -0
- data/rbi/metronome_sdk/models/tier.rbi +29 -0
- data/rbi/metronome_sdk/models/v1/alert_archive_response.rbi +4 -37
- data/rbi/metronome_sdk/models/v1/alert_create_params.rbi +6 -0
- data/rbi/metronome_sdk/models/v1/alert_create_response.rbi +4 -37
- data/rbi/metronome_sdk/models/v1/billable_metric_archive_params.rbi +6 -12
- data/rbi/metronome_sdk/models/v1/billable_metric_archive_response.rbi +4 -44
- data/rbi/metronome_sdk/models/v1/billable_metric_create_params.rbi +8 -177
- data/rbi/metronome_sdk/models/v1/billable_metric_create_response.rbi +4 -43
- data/rbi/metronome_sdk/models/v1/billable_metric_list_response.rbi +8 -177
- data/rbi/metronome_sdk/models/v1/billable_metric_retrieve_response.rbi +8 -175
- data/rbi/metronome_sdk/models/v1/contract_amend_params.rbi +712 -68
- data/rbi/metronome_sdk/models/v1/contract_amend_response.rbi +4 -37
- data/rbi/metronome_sdk/models/v1/contract_archive_response.rbi +4 -39
- data/rbi/metronome_sdk/models/v1/contract_create_historical_invoices_response.rbi +3 -2595
- data/rbi/metronome_sdk/models/v1/contract_create_params.rbi +1738 -210
- data/rbi/metronome_sdk/models/v1/contract_create_response.rbi +4 -37
- data/rbi/metronome_sdk/models/v1/contract_list_balances_params.rbi +11 -0
- data/rbi/metronome_sdk/models/v1/contract_list_balances_response.rbi +3 -3366
- data/rbi/metronome_sdk/models/v1/contract_list_response.rbi +375 -22523
- data/rbi/metronome_sdk/models/v1/contract_retrieve_rate_schedule_response.rbi +12 -632
- data/rbi/metronome_sdk/models/v1/contract_retrieve_response.rbi +375 -22523
- data/rbi/metronome_sdk/models/v1/contract_schedule_pro_services_invoice_response.rbi +3 -2595
- data/rbi/metronome_sdk/models/v1/contract_update_end_date_response.rbi +4 -44
- data/rbi/metronome_sdk/models/v1/contracts/product_archive_response.rbi +4 -44
- data/rbi/metronome_sdk/models/v1/contracts/product_create_params.rbi +8 -209
- data/rbi/metronome_sdk/models/v1/contracts/product_create_response.rbi +4 -44
- data/rbi/metronome_sdk/models/v1/contracts/product_list_item_state.rbi +237 -0
- data/rbi/metronome_sdk/models/v1/contracts/product_list_response.rbi +76 -1143
- data/rbi/metronome_sdk/models/v1/contracts/product_retrieve_params.rbi +3 -9
- data/rbi/metronome_sdk/models/v1/contracts/product_retrieve_response.rbi +76 -1137
- data/rbi/metronome_sdk/models/v1/contracts/product_update_params.rbi +8 -209
- data/rbi/metronome_sdk/models/v1/contracts/product_update_response.rbi +4 -44
- data/rbi/metronome_sdk/models/v1/contracts/quantity_conversion.rbi +111 -0
- data/rbi/metronome_sdk/models/v1/contracts/quantity_rounding.rbi +94 -0
- data/rbi/metronome_sdk/models/v1/contracts/rate_card_archive_params.rbi +3 -9
- data/rbi/metronome_sdk/models/v1/contracts/rate_card_archive_response.rbi +4 -44
- data/rbi/metronome_sdk/models/v1/contracts/rate_card_create_response.rbi +4 -44
- data/rbi/metronome_sdk/models/v1/contracts/rate_card_list_response.rbi +8 -74
- data/rbi/metronome_sdk/models/v1/contracts/rate_card_retrieve_params.rbi +3 -9
- data/rbi/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_response.rbi +8 -344
- data/rbi/metronome_sdk/models/v1/contracts/rate_card_retrieve_response.rbi +8 -74
- data/rbi/metronome_sdk/models/v1/contracts/rate_card_update_response.rbi +4 -44
- data/rbi/metronome_sdk/models/v1/contracts/rate_cards/product_order_set_response.rbi +4 -44
- data/rbi/metronome_sdk/models/v1/contracts/rate_cards/product_order_update_response.rbi +4 -44
- data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_params.rbi +8 -108
- data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_response.rbi +4 -45
- data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_add_params.rbi +8 -108
- data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_add_response.rbi +12 -149
- data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_list_response.rbi +8 -344
- data/rbi/metronome_sdk/models/v1/credit_grant_create_params.rbi +8 -166
- data/rbi/metronome_sdk/models/v1/credit_grant_create_response.rbi +4 -41
- data/rbi/metronome_sdk/models/v1/credit_grant_edit_response.rbi +4 -39
- data/rbi/metronome_sdk/models/v1/credit_grant_list_entries_params.rbi +58 -0
- data/rbi/metronome_sdk/models/v1/credit_grant_list_entries_response.rbi +10 -231
- data/rbi/metronome_sdk/models/v1/credit_grant_list_response.rbi +14 -281
- data/rbi/metronome_sdk/models/v1/credit_grant_void_response.rbi +4 -39
- data/rbi/metronome_sdk/models/v1/credit_ledger_entry.rbi +90 -0
- data/rbi/metronome_sdk/models/v1/customer.rbi +74 -0
- data/rbi/metronome_sdk/models/v1/customer_archive_params.rbi +6 -12
- data/rbi/metronome_sdk/models/v1/customer_archive_response.rbi +4 -39
- data/rbi/metronome_sdk/models/v1/customer_create_response.rbi +6 -84
- data/rbi/metronome_sdk/models/v1/{customer_list_response.rbi → customer_detail.rbi} +19 -26
- data/rbi/metronome_sdk/models/v1/customer_list_billable_metrics_response.rbi +8 -177
- data/rbi/metronome_sdk/models/v1/customer_preview_events_params.rbi +214 -0
- data/rbi/metronome_sdk/models/v1/customer_preview_events_response.rbi +35 -0
- data/rbi/metronome_sdk/models/v1/customer_retrieve_response.rbi +6 -255
- data/rbi/metronome_sdk/models/v1/customer_set_name_response.rbi +6 -86
- data/rbi/metronome_sdk/models/v1/customers/alert_list_response.rbi +3 -623
- data/rbi/metronome_sdk/models/v1/customers/alert_retrieve_response.rbi +4 -622
- data/rbi/metronome_sdk/models/v1/customers/billing_config_retrieve_response.rbi +11 -0
- data/rbi/metronome_sdk/models/v1/customers/commit_create_params.rbi +12 -8
- data/rbi/metronome_sdk/models/v1/customers/commit_create_response.rbi +4 -44
- data/rbi/metronome_sdk/models/v1/customers/commit_list_params.rbi +11 -0
- data/rbi/metronome_sdk/models/v1/customers/commit_list_response.rbi +3 -2164
- data/rbi/metronome_sdk/models/v1/customers/commit_update_end_date_response.rbi +4 -44
- data/rbi/metronome_sdk/models/v1/customers/credit_create_response.rbi +4 -44
- data/rbi/metronome_sdk/models/v1/customers/credit_list_params.rbi +11 -0
- data/rbi/metronome_sdk/models/v1/customers/credit_list_response.rbi +3 -1224
- data/rbi/metronome_sdk/models/v1/customers/credit_update_end_date_response.rbi +4 -44
- data/rbi/metronome_sdk/models/v1/customers/customer_alert.rbi +572 -0
- data/rbi/metronome_sdk/models/v1/customers/{invoice_list_response.rbi → invoice.rbi} +182 -589
- data/rbi/metronome_sdk/models/v1/customers/invoice_list_breakdowns_response.rbi +4 -2561
- data/rbi/metronome_sdk/models/v1/customers/invoice_retrieve_response.rbi +6 -2612
- data/rbi/metronome_sdk/models/v1/customers/plan_add_response.rbi +4 -41
- data/rbi/metronome_sdk/models/v1/customers/plan_list_response.rbi +4 -39
- data/rbi/metronome_sdk/models/v1/dashboard_get_embeddable_url_params.rbi +5 -0
- data/rbi/metronome_sdk/models/v1/plan_detail.rbi +349 -0
- data/rbi/metronome_sdk/models/v1/plan_get_details_response.rbi +6 -560
- data/rbi/metronome_sdk/models/v1/plan_list_charges_response.rbi +4 -37
- data/rbi/metronome_sdk/models/v1/plan_list_customers_response.rbi +4 -248
- data/rbi/metronome_sdk/models/v1/rollover_amount_max_amount.rbi +79 -0
- data/rbi/metronome_sdk/models/v1/rollover_amount_max_percentage.rbi +80 -0
- data/rbi/metronome_sdk/models/v1/usage_search_params.rbi +48 -0
- data/rbi/metronome_sdk/models/v1/usage_search_response.rbi +438 -0
- data/rbi/metronome_sdk/models/v2/contract_edit_commit_params.rbi +23 -23
- data/rbi/metronome_sdk/models/v2/contract_edit_commit_response.rbi +4 -41
- data/rbi/metronome_sdk/models/v2/contract_edit_credit_params.rbi +11 -15
- data/rbi/metronome_sdk/models/v2/contract_edit_credit_response.rbi +4 -41
- data/rbi/metronome_sdk/models/v2/contract_edit_params.rbi +2463 -206
- data/rbi/metronome_sdk/models/v2/contract_edit_response.rbi +4 -37
- data/rbi/metronome_sdk/models/v2/contract_get_edit_history_response.rbi +1381 -1550
- data/rbi/metronome_sdk/models/v2/contract_list_response.rbi +2017 -1466
- data/rbi/metronome_sdk/models/v2/contract_retrieve_response.rbi +2017 -1466
- data/rbi/metronome_sdk/models.rbi +32 -0
- data/rbi/metronome_sdk/resources/v1/alerts.rbi +3 -0
- data/rbi/metronome_sdk/resources/v1/billable_metrics.rbi +2 -6
- data/rbi/metronome_sdk/resources/v1/contracts/products.rbi +4 -4
- data/rbi/metronome_sdk/resources/v1/contracts/rate_cards/rates.rbi +1 -4
- data/rbi/metronome_sdk/resources/v1/contracts.rbi +13 -4
- data/rbi/metronome_sdk/resources/v1/credit_grants.rbi +4 -0
- data/rbi/metronome_sdk/resources/v1/customers/commits.rbi +9 -4
- data/rbi/metronome_sdk/resources/v1/customers/credits.rbi +3 -0
- data/rbi/metronome_sdk/resources/v1/customers/invoices.rbi +1 -1
- data/rbi/metronome_sdk/resources/v1/customers.rbi +34 -3
- data/rbi/metronome_sdk/resources/v1/usage.rbi +17 -0
- data/rbi/metronome_sdk/resources/v2/contracts.rbi +24 -14
- data/sig/metronome_sdk/errors.rbs +9 -0
- data/sig/metronome_sdk/internal/type/converter.rbs +7 -1
- data/sig/metronome_sdk/models/base_usage_filter.rbs +28 -0
- data/sig/metronome_sdk/models/commit.rbs +1063 -0
- data/sig/metronome_sdk/models/contract_without_amendments.rbs +1828 -0
- data/sig/metronome_sdk/models/credit.rbs +686 -0
- data/sig/metronome_sdk/models/credit_type_data.rbs +15 -0
- data/sig/metronome_sdk/models/discount.rbs +63 -0
- data/sig/metronome_sdk/models/event_type_filter.rbs +26 -0
- data/sig/metronome_sdk/models/id.rbs +13 -0
- data/sig/metronome_sdk/models/override.rbs +399 -0
- data/sig/metronome_sdk/models/pro_service.rbs +61 -0
- data/sig/metronome_sdk/models/property_filter.rbs +41 -0
- data/sig/metronome_sdk/models/rate.rbs +94 -0
- data/sig/metronome_sdk/models/schedule_duration.rbs +56 -0
- data/sig/metronome_sdk/models/schedule_point_in_time.rbs +75 -0
- data/sig/metronome_sdk/models/scheduled_charge.rbs +70 -0
- data/sig/metronome_sdk/models/tier.rbs +17 -0
- data/sig/metronome_sdk/models/v1/alert_archive_response.rbs +4 -19
- data/sig/metronome_sdk/models/v1/alert_create_response.rbs +4 -19
- data/sig/metronome_sdk/models/v1/billable_metric_archive_params.rbs +4 -12
- data/sig/metronome_sdk/models/v1/billable_metric_archive_response.rbs +4 -19
- data/sig/metronome_sdk/models/v1/billable_metric_create_params.rbs +12 -73
- data/sig/metronome_sdk/models/v1/billable_metric_create_response.rbs +4 -19
- data/sig/metronome_sdk/models/v1/billable_metric_list_response.rbs +12 -73
- data/sig/metronome_sdk/models/v1/billable_metric_retrieve_response.rbs +12 -73
- data/sig/metronome_sdk/models/v1/contract_amend_params.rbs +291 -24
- data/sig/metronome_sdk/models/v1/contract_amend_response.rbs +4 -19
- data/sig/metronome_sdk/models/v1/contract_archive_response.rbs +4 -19
- data/sig/metronome_sdk/models/v1/contract_create_historical_invoices_response.rbs +4 -1291
- data/sig/metronome_sdk/models/v1/contract_create_params.rbs +694 -84
- data/sig/metronome_sdk/models/v1/contract_create_response.rbs +4 -19
- data/sig/metronome_sdk/models/v1/contract_list_balances_params.rbs +7 -0
- data/sig/metronome_sdk/models/v1/contract_list_balances_response.rbs +1 -1642
- data/sig/metronome_sdk/models/v1/contract_list_response.rbs +188 -10437
- data/sig/metronome_sdk/models/v1/contract_retrieve_rate_schedule_response.rbs +15 -271
- data/sig/metronome_sdk/models/v1/contract_retrieve_response.rbs +188 -10437
- data/sig/metronome_sdk/models/v1/contract_schedule_pro_services_invoice_response.rbs +4 -1291
- data/sig/metronome_sdk/models/v1/contract_update_end_date_response.rbs +4 -19
- data/sig/metronome_sdk/models/v1/contracts/product_archive_response.rbs +4 -21
- data/sig/metronome_sdk/models/v1/contracts/product_create_params.rbs +8 -82
- data/sig/metronome_sdk/models/v1/contracts/product_create_response.rbs +4 -21
- data/sig/metronome_sdk/models/v1/contracts/product_list_item_state.rbs +121 -0
- data/sig/metronome_sdk/models/v1/contracts/product_list_response.rbs +16 -466
- data/sig/metronome_sdk/models/v1/contracts/product_retrieve_params.rbs +4 -12
- data/sig/metronome_sdk/models/v1/contracts/product_retrieve_response.rbs +16 -466
- data/sig/metronome_sdk/models/v1/contracts/product_update_params.rbs +8 -82
- data/sig/metronome_sdk/models/v1/contracts/product_update_response.rbs +4 -21
- data/sig/metronome_sdk/models/v1/contracts/quantity_conversion.rbs +47 -0
- data/sig/metronome_sdk/models/v1/contracts/quantity_rounding.rbs +41 -0
- data/sig/metronome_sdk/models/v1/contracts/rate_card_archive_params.rbs +4 -12
- data/sig/metronome_sdk/models/v1/contracts/rate_card_archive_response.rbs +4 -21
- data/sig/metronome_sdk/models/v1/contracts/rate_card_create_response.rbs +4 -21
- data/sig/metronome_sdk/models/v1/contracts/rate_card_list_response.rbs +10 -34
- data/sig/metronome_sdk/models/v1/contracts/rate_card_retrieve_params.rbs +4 -12
- data/sig/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_response.rbs +10 -144
- data/sig/metronome_sdk/models/v1/contracts/rate_card_retrieve_response.rbs +10 -34
- data/sig/metronome_sdk/models/v1/contracts/rate_card_update_response.rbs +4 -21
- data/sig/metronome_sdk/models/v1/contracts/rate_cards/product_order_set_response.rbs +4 -21
- data/sig/metronome_sdk/models/v1/contracts/rate_cards/product_order_update_response.rbs +4 -21
- data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_params.rbs +12 -40
- data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_response.rbs +4 -21
- data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_add_params.rbs +12 -40
- data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_add_response.rbs +18 -58
- data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_list_response.rbs +10 -144
- data/sig/metronome_sdk/models/v1/credit_grant_create_params.rbs +2 -66
- data/sig/metronome_sdk/models/v1/credit_grant_create_response.rbs +4 -19
- data/sig/metronome_sdk/models/v1/credit_grant_edit_response.rbs +4 -19
- data/sig/metronome_sdk/models/v1/credit_grant_list_entries_params.rbs +20 -0
- data/sig/metronome_sdk/models/v1/credit_grant_list_entries_response.rbs +12 -118
- data/sig/metronome_sdk/models/v1/credit_grant_list_response.rbs +16 -140
- data/sig/metronome_sdk/models/v1/credit_grant_void_response.rbs +4 -19
- data/sig/metronome_sdk/models/v1/credit_ledger_entry.rbs +52 -0
- data/sig/metronome_sdk/models/v1/customer.rbs +44 -0
- data/sig/metronome_sdk/models/v1/customer_archive_params.rbs +4 -12
- data/sig/metronome_sdk/models/v1/customer_archive_response.rbs +4 -19
- data/sig/metronome_sdk/models/v1/customer_create_response.rbs +4 -48
- data/sig/metronome_sdk/models/v1/{customer_list_response.rbs → customer_detail.rbs} +17 -17
- data/sig/metronome_sdk/models/v1/customer_list_billable_metrics_response.rbs +12 -73
- data/sig/metronome_sdk/models/v1/customer_preview_events_params.rbs +105 -0
- data/sig/metronome_sdk/models/v1/customer_preview_events_response.rbs +16 -0
- data/sig/metronome_sdk/models/v1/customer_retrieve_response.rbs +4 -112
- data/sig/metronome_sdk/models/v1/customer_set_name_response.rbs +4 -48
- data/sig/metronome_sdk/models/v1/customers/alert_list_response.rbs +4 -243
- data/sig/metronome_sdk/models/v1/customers/alert_retrieve_response.rbs +4 -247
- data/sig/metronome_sdk/models/v1/customers/billing_config_retrieve_response.rbs +7 -0
- data/sig/metronome_sdk/models/v1/customers/commit_create_response.rbs +4 -21
- data/sig/metronome_sdk/models/v1/customers/commit_list_params.rbs +7 -0
- data/sig/metronome_sdk/models/v1/customers/commit_list_response.rbs +4 -1057
- data/sig/metronome_sdk/models/v1/customers/commit_update_end_date_response.rbs +4 -21
- data/sig/metronome_sdk/models/v1/customers/credit_create_response.rbs +4 -21
- data/sig/metronome_sdk/models/v1/customers/credit_list_params.rbs +7 -0
- data/sig/metronome_sdk/models/v1/customers/credit_list_response.rbs +4 -596
- data/sig/metronome_sdk/models/v1/customers/credit_update_end_date_response.rbs +4 -21
- data/sig/metronome_sdk/models/v1/customers/customer_alert.rbs +234 -0
- data/sig/metronome_sdk/models/v1/customers/{invoice_list_response.rbs → invoice.rbs} +147 -305
- data/sig/metronome_sdk/models/v1/customers/invoice_list_breakdowns_response.rbs +8 -1278
- data/sig/metronome_sdk/models/v1/customers/invoice_retrieve_response.rbs +4 -1294
- data/sig/metronome_sdk/models/v1/customers/plan_add_response.rbs +4 -19
- data/sig/metronome_sdk/models/v1/customers/plan_list_response.rbs +4 -16
- data/sig/metronome_sdk/models/v1/dashboard_get_embeddable_url_params.rbs +2 -1
- data/sig/metronome_sdk/models/v1/plan_detail.rbs +203 -0
- data/sig/metronome_sdk/models/v1/plan_get_details_response.rbs +4 -267
- data/sig/metronome_sdk/models/v1/plan_list_charges_response.rbs +4 -16
- data/sig/metronome_sdk/models/v1/plan_list_customers_response.rbs +4 -108
- data/sig/metronome_sdk/models/v1/rollover_amount_max_amount.rbs +37 -0
- data/sig/metronome_sdk/models/v1/rollover_amount_max_percentage.rbs +37 -0
- data/sig/metronome_sdk/models/v1/usage_search_params.rbs +26 -0
- data/sig/metronome_sdk/models/v1/usage_search_response.rbs +230 -0
- data/sig/metronome_sdk/models/v2/contract_edit_commit_params.rbs +4 -8
- data/sig/metronome_sdk/models/v2/contract_edit_commit_response.rbs +4 -19
- data/sig/metronome_sdk/models/v2/contract_edit_credit_params.rbs +4 -8
- data/sig/metronome_sdk/models/v2/contract_edit_credit_response.rbs +4 -19
- data/sig/metronome_sdk/models/v2/contract_edit_params.rbs +989 -77
- data/sig/metronome_sdk/models/v2/contract_edit_response.rbs +4 -19
- data/sig/metronome_sdk/models/v2/contract_get_edit_history_response.rbs +510 -655
- data/sig/metronome_sdk/models/v2/contract_list_response.rbs +970 -809
- data/sig/metronome_sdk/models/v2/contract_retrieve_response.rbs +970 -809
- data/sig/metronome_sdk/models.rbs +32 -0
- data/sig/metronome_sdk/resources/v1/billable_metrics.rbs +2 -2
- data/sig/metronome_sdk/resources/v1/contracts/products.rbs +4 -4
- data/sig/metronome_sdk/resources/v1/contracts/rate_cards/rates.rbs +1 -1
- data/sig/metronome_sdk/resources/v1/contracts.rbs +4 -1
- data/sig/metronome_sdk/resources/v1/credit_grants.rbs +1 -0
- data/sig/metronome_sdk/resources/v1/customers/commits.rbs +1 -0
- data/sig/metronome_sdk/resources/v1/customers/credits.rbs +1 -0
- data/sig/metronome_sdk/resources/v1/customers/invoices.rbs +1 -1
- data/sig/metronome_sdk/resources/v1/customers.rbs +9 -1
- data/sig/metronome_sdk/resources/v1/usage.rbs +5 -0
- data/sig/metronome_sdk/resources/v2/contracts.rbs +3 -2
- metadata +97 -10
@@ -60,32 +60,24 @@ module MetronomeSDK
|
|
60
60
|
sig { returns(String) }
|
61
61
|
attr_accessor :id
|
62
62
|
|
63
|
-
sig
|
64
|
-
returns(
|
65
|
-
MetronomeSDK::Models::V1::Contracts::ProductRetrieveResponse::Data::Current
|
66
|
-
)
|
67
|
-
end
|
63
|
+
sig { returns(MetronomeSDK::V1::Contracts::ProductListItemState) }
|
68
64
|
attr_reader :current
|
69
65
|
|
70
66
|
sig do
|
71
67
|
params(
|
72
68
|
current:
|
73
|
-
MetronomeSDK::
|
69
|
+
MetronomeSDK::V1::Contracts::ProductListItemState::OrHash
|
74
70
|
).void
|
75
71
|
end
|
76
72
|
attr_writer :current
|
77
73
|
|
78
|
-
sig
|
79
|
-
returns(
|
80
|
-
MetronomeSDK::Models::V1::Contracts::ProductRetrieveResponse::Data::Initial
|
81
|
-
)
|
82
|
-
end
|
74
|
+
sig { returns(MetronomeSDK::V1::Contracts::ProductListItemState) }
|
83
75
|
attr_reader :initial
|
84
76
|
|
85
77
|
sig do
|
86
78
|
params(
|
87
79
|
initial:
|
88
|
-
MetronomeSDK::
|
80
|
+
MetronomeSDK::V1::Contracts::ProductListItemState::OrHash
|
89
81
|
).void
|
90
82
|
end
|
91
83
|
attr_writer :initial
|
@@ -119,9 +111,9 @@ module MetronomeSDK
|
|
119
111
|
params(
|
120
112
|
id: String,
|
121
113
|
current:
|
122
|
-
MetronomeSDK::
|
114
|
+
MetronomeSDK::V1::Contracts::ProductListItemState::OrHash,
|
123
115
|
initial:
|
124
|
-
MetronomeSDK::
|
116
|
+
MetronomeSDK::V1::Contracts::ProductListItemState::OrHash,
|
125
117
|
type:
|
126
118
|
MetronomeSDK::Models::V1::Contracts::ProductRetrieveResponse::Data::Type::OrSymbol,
|
127
119
|
updates:
|
@@ -147,10 +139,8 @@ module MetronomeSDK
|
|
147
139
|
override.returns(
|
148
140
|
{
|
149
141
|
id: String,
|
150
|
-
current:
|
151
|
-
|
152
|
-
initial:
|
153
|
-
MetronomeSDK::Models::V1::Contracts::ProductRetrieveResponse::Data::Initial,
|
142
|
+
current: MetronomeSDK::V1::Contracts::ProductListItemState,
|
143
|
+
initial: MetronomeSDK::V1::Contracts::ProductListItemState,
|
154
144
|
type:
|
155
145
|
MetronomeSDK::Models::V1::Contracts::ProductRetrieveResponse::Data::Type::TaggedSymbol,
|
156
146
|
updates:
|
@@ -165,11 +155,60 @@ module MetronomeSDK
|
|
165
155
|
def to_hash
|
166
156
|
end
|
167
157
|
|
168
|
-
|
158
|
+
module Type
|
159
|
+
extend MetronomeSDK::Internal::Type::Enum
|
160
|
+
|
161
|
+
TaggedSymbol =
|
162
|
+
T.type_alias do
|
163
|
+
T.all(
|
164
|
+
Symbol,
|
165
|
+
MetronomeSDK::Models::V1::Contracts::ProductRetrieveResponse::Data::Type
|
166
|
+
)
|
167
|
+
end
|
168
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
169
|
+
|
170
|
+
USAGE =
|
171
|
+
T.let(
|
172
|
+
:USAGE,
|
173
|
+
MetronomeSDK::Models::V1::Contracts::ProductRetrieveResponse::Data::Type::TaggedSymbol
|
174
|
+
)
|
175
|
+
SUBSCRIPTION =
|
176
|
+
T.let(
|
177
|
+
:SUBSCRIPTION,
|
178
|
+
MetronomeSDK::Models::V1::Contracts::ProductRetrieveResponse::Data::Type::TaggedSymbol
|
179
|
+
)
|
180
|
+
COMPOSITE =
|
181
|
+
T.let(
|
182
|
+
:COMPOSITE,
|
183
|
+
MetronomeSDK::Models::V1::Contracts::ProductRetrieveResponse::Data::Type::TaggedSymbol
|
184
|
+
)
|
185
|
+
FIXED =
|
186
|
+
T.let(
|
187
|
+
:FIXED,
|
188
|
+
MetronomeSDK::Models::V1::Contracts::ProductRetrieveResponse::Data::Type::TaggedSymbol
|
189
|
+
)
|
190
|
+
PRO_SERVICE =
|
191
|
+
T.let(
|
192
|
+
:PRO_SERVICE,
|
193
|
+
MetronomeSDK::Models::V1::Contracts::ProductRetrieveResponse::Data::Type::TaggedSymbol
|
194
|
+
)
|
195
|
+
|
196
|
+
sig do
|
197
|
+
override.returns(
|
198
|
+
T::Array[
|
199
|
+
MetronomeSDK::Models::V1::Contracts::ProductRetrieveResponse::Data::Type::TaggedSymbol
|
200
|
+
]
|
201
|
+
)
|
202
|
+
end
|
203
|
+
def self.values
|
204
|
+
end
|
205
|
+
end
|
206
|
+
|
207
|
+
class Update < MetronomeSDK::Internal::Type::BaseModel
|
169
208
|
OrHash =
|
170
209
|
T.type_alias do
|
171
210
|
T.any(
|
172
|
-
MetronomeSDK::Models::V1::Contracts::ProductRetrieveResponse::Data::
|
211
|
+
MetronomeSDK::Models::V1::Contracts::ProductRetrieveResponse::Data::Update,
|
173
212
|
MetronomeSDK::Internal::AnyHash
|
174
213
|
)
|
175
214
|
end
|
@@ -180,9 +219,6 @@ module MetronomeSDK
|
|
180
219
|
sig { returns(String) }
|
181
220
|
attr_accessor :created_by
|
182
221
|
|
183
|
-
sig { returns(String) }
|
184
|
-
attr_accessor :name
|
185
|
-
|
186
222
|
sig { returns(T.nilable(String)) }
|
187
223
|
attr_reader :billable_metric_id
|
188
224
|
|
@@ -207,13 +243,18 @@ module MetronomeSDK
|
|
207
243
|
sig { params(exclude_free_usage: T::Boolean).void }
|
208
244
|
attr_writer :exclude_free_usage
|
209
245
|
|
210
|
-
# This field's availability is dependent on your client's configuration.
|
211
246
|
sig { returns(T.nilable(T::Boolean)) }
|
212
247
|
attr_reader :is_refundable
|
213
248
|
|
214
249
|
sig { params(is_refundable: T::Boolean).void }
|
215
250
|
attr_writer :is_refundable
|
216
251
|
|
252
|
+
sig { returns(T.nilable(String)) }
|
253
|
+
attr_reader :name
|
254
|
+
|
255
|
+
sig { params(name: String).void }
|
256
|
+
attr_writer :name
|
257
|
+
|
217
258
|
# This field's availability is dependent on your client's configuration.
|
218
259
|
sig { returns(T.nilable(String)) }
|
219
260
|
attr_reader :netsuite_internal_item_id
|
@@ -256,9 +297,7 @@ module MetronomeSDK
|
|
256
297
|
# "divide".
|
257
298
|
sig do
|
258
299
|
returns(
|
259
|
-
T.nilable(
|
260
|
-
MetronomeSDK::Models::V1::Contracts::ProductRetrieveResponse::Data::Current::QuantityConversion
|
261
|
-
)
|
300
|
+
T.nilable(MetronomeSDK::V1::Contracts::QuantityConversion)
|
262
301
|
)
|
263
302
|
end
|
264
303
|
attr_reader :quantity_conversion
|
@@ -267,7 +306,7 @@ module MetronomeSDK
|
|
267
306
|
params(
|
268
307
|
quantity_conversion:
|
269
308
|
T.nilable(
|
270
|
-
MetronomeSDK::
|
309
|
+
MetronomeSDK::V1::Contracts::QuantityConversion::OrHash
|
271
310
|
)
|
272
311
|
).void
|
273
312
|
end
|
@@ -279,9 +318,7 @@ module MetronomeSDK
|
|
279
318
|
# rounded up to the nearest integer.
|
280
319
|
sig do
|
281
320
|
returns(
|
282
|
-
T.nilable(
|
283
|
-
MetronomeSDK::Models::V1::Contracts::ProductRetrieveResponse::Data::Current::QuantityRounding
|
284
|
-
)
|
321
|
+
T.nilable(MetronomeSDK::V1::Contracts::QuantityRounding)
|
285
322
|
)
|
286
323
|
end
|
287
324
|
attr_reader :quantity_rounding
|
@@ -290,7 +327,7 @@ module MetronomeSDK
|
|
290
327
|
params(
|
291
328
|
quantity_rounding:
|
292
329
|
T.nilable(
|
293
|
-
MetronomeSDK::
|
330
|
+
MetronomeSDK::V1::Contracts::QuantityRounding::OrHash
|
294
331
|
)
|
295
332
|
).void
|
296
333
|
end
|
@@ -312,23 +349,23 @@ module MetronomeSDK
|
|
312
349
|
params(
|
313
350
|
created_at: Time,
|
314
351
|
created_by: String,
|
315
|
-
name: String,
|
316
352
|
billable_metric_id: String,
|
317
353
|
composite_product_ids: T::Array[String],
|
318
354
|
composite_tags: T::Array[String],
|
319
355
|
exclude_free_usage: T::Boolean,
|
320
356
|
is_refundable: T::Boolean,
|
357
|
+
name: String,
|
321
358
|
netsuite_internal_item_id: String,
|
322
359
|
netsuite_overage_item_id: String,
|
323
360
|
presentation_group_key: T::Array[String],
|
324
361
|
pricing_group_key: T::Array[String],
|
325
362
|
quantity_conversion:
|
326
363
|
T.nilable(
|
327
|
-
MetronomeSDK::
|
364
|
+
MetronomeSDK::V1::Contracts::QuantityConversion::OrHash
|
328
365
|
),
|
329
366
|
quantity_rounding:
|
330
367
|
T.nilable(
|
331
|
-
MetronomeSDK::
|
368
|
+
MetronomeSDK::V1::Contracts::QuantityRounding::OrHash
|
332
369
|
),
|
333
370
|
starting_at: Time,
|
334
371
|
tags: T::Array[String]
|
@@ -337,13 +374,12 @@ module MetronomeSDK
|
|
337
374
|
def self.new(
|
338
375
|
created_at:,
|
339
376
|
created_by:,
|
340
|
-
name:,
|
341
377
|
billable_metric_id: nil,
|
342
378
|
composite_product_ids: nil,
|
343
379
|
composite_tags: nil,
|
344
380
|
exclude_free_usage: nil,
|
345
|
-
# This field's availability is dependent on your client's configuration.
|
346
381
|
is_refundable: nil,
|
382
|
+
name: nil,
|
347
383
|
# This field's availability is dependent on your client's configuration.
|
348
384
|
netsuite_internal_item_id: nil,
|
349
385
|
# This field's availability is dependent on your client's configuration.
|
@@ -380,24 +416,22 @@ module MetronomeSDK
|
|
380
416
|
{
|
381
417
|
created_at: Time,
|
382
418
|
created_by: String,
|
383
|
-
name: String,
|
384
419
|
billable_metric_id: String,
|
385
420
|
composite_product_ids: T::Array[String],
|
386
421
|
composite_tags: T::Array[String],
|
387
422
|
exclude_free_usage: T::Boolean,
|
388
423
|
is_refundable: T::Boolean,
|
424
|
+
name: String,
|
389
425
|
netsuite_internal_item_id: String,
|
390
426
|
netsuite_overage_item_id: String,
|
391
427
|
presentation_group_key: T::Array[String],
|
392
428
|
pricing_group_key: T::Array[String],
|
393
429
|
quantity_conversion:
|
394
430
|
T.nilable(
|
395
|
-
MetronomeSDK::
|
431
|
+
MetronomeSDK::V1::Contracts::QuantityConversion
|
396
432
|
),
|
397
433
|
quantity_rounding:
|
398
|
-
T.nilable(
|
399
|
-
MetronomeSDK::Models::V1::Contracts::ProductRetrieveResponse::Data::Current::QuantityRounding
|
400
|
-
),
|
434
|
+
T.nilable(MetronomeSDK::V1::Contracts::QuantityRounding),
|
401
435
|
starting_at: Time,
|
402
436
|
tags: T::Array[String]
|
403
437
|
}
|
@@ -405,1101 +439,6 @@ module MetronomeSDK
|
|
405
439
|
end
|
406
440
|
def to_hash
|
407
441
|
end
|
408
|
-
|
409
|
-
class QuantityConversion < MetronomeSDK::Internal::Type::BaseModel
|
410
|
-
OrHash =
|
411
|
-
T.type_alias do
|
412
|
-
T.any(
|
413
|
-
MetronomeSDK::Models::V1::Contracts::ProductRetrieveResponse::Data::Current::QuantityConversion,
|
414
|
-
MetronomeSDK::Internal::AnyHash
|
415
|
-
)
|
416
|
-
end
|
417
|
-
|
418
|
-
# The factor to multiply or divide the quantity by.
|
419
|
-
sig { returns(Float) }
|
420
|
-
attr_accessor :conversion_factor
|
421
|
-
|
422
|
-
# The operation to perform on the quantity
|
423
|
-
sig do
|
424
|
-
returns(
|
425
|
-
MetronomeSDK::Models::V1::Contracts::ProductRetrieveResponse::Data::Current::QuantityConversion::Operation::TaggedSymbol
|
426
|
-
)
|
427
|
-
end
|
428
|
-
attr_accessor :operation
|
429
|
-
|
430
|
-
# Optional name for this conversion.
|
431
|
-
sig { returns(T.nilable(String)) }
|
432
|
-
attr_reader :name
|
433
|
-
|
434
|
-
sig { params(name: String).void }
|
435
|
-
attr_writer :name
|
436
|
-
|
437
|
-
# Optional. Only valid for USAGE products. If provided, the quantity will be
|
438
|
-
# converted using the provided conversion factor and operation. For example, if
|
439
|
-
# the operation is "multiply" and the conversion factor is 100, then the quantity
|
440
|
-
# will be multiplied by 100. This can be used in cases where data is sent in one
|
441
|
-
# unit and priced in another. For example, data could be sent in MB and priced in
|
442
|
-
# GB. In this case, the conversion factor would be 1024 and the operation would be
|
443
|
-
# "divide".
|
444
|
-
sig do
|
445
|
-
params(
|
446
|
-
conversion_factor: Float,
|
447
|
-
operation:
|
448
|
-
MetronomeSDK::Models::V1::Contracts::ProductRetrieveResponse::Data::Current::QuantityConversion::Operation::OrSymbol,
|
449
|
-
name: String
|
450
|
-
).returns(T.attached_class)
|
451
|
-
end
|
452
|
-
def self.new(
|
453
|
-
# The factor to multiply or divide the quantity by.
|
454
|
-
conversion_factor:,
|
455
|
-
# The operation to perform on the quantity
|
456
|
-
operation:,
|
457
|
-
# Optional name for this conversion.
|
458
|
-
name: nil
|
459
|
-
)
|
460
|
-
end
|
461
|
-
|
462
|
-
sig do
|
463
|
-
override.returns(
|
464
|
-
{
|
465
|
-
conversion_factor: Float,
|
466
|
-
operation:
|
467
|
-
MetronomeSDK::Models::V1::Contracts::ProductRetrieveResponse::Data::Current::QuantityConversion::Operation::TaggedSymbol,
|
468
|
-
name: String
|
469
|
-
}
|
470
|
-
)
|
471
|
-
end
|
472
|
-
def to_hash
|
473
|
-
end
|
474
|
-
|
475
|
-
# The operation to perform on the quantity
|
476
|
-
module Operation
|
477
|
-
extend MetronomeSDK::Internal::Type::Enum
|
478
|
-
|
479
|
-
TaggedSymbol =
|
480
|
-
T.type_alias do
|
481
|
-
T.all(
|
482
|
-
Symbol,
|
483
|
-
MetronomeSDK::Models::V1::Contracts::ProductRetrieveResponse::Data::Current::QuantityConversion::Operation
|
484
|
-
)
|
485
|
-
end
|
486
|
-
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
487
|
-
|
488
|
-
MULTIPLY =
|
489
|
-
T.let(
|
490
|
-
:MULTIPLY,
|
491
|
-
MetronomeSDK::Models::V1::Contracts::ProductRetrieveResponse::Data::Current::QuantityConversion::Operation::TaggedSymbol
|
492
|
-
)
|
493
|
-
DIVIDE =
|
494
|
-
T.let(
|
495
|
-
:DIVIDE,
|
496
|
-
MetronomeSDK::Models::V1::Contracts::ProductRetrieveResponse::Data::Current::QuantityConversion::Operation::TaggedSymbol
|
497
|
-
)
|
498
|
-
|
499
|
-
sig do
|
500
|
-
override.returns(
|
501
|
-
T::Array[
|
502
|
-
MetronomeSDK::Models::V1::Contracts::ProductRetrieveResponse::Data::Current::QuantityConversion::Operation::TaggedSymbol
|
503
|
-
]
|
504
|
-
)
|
505
|
-
end
|
506
|
-
def self.values
|
507
|
-
end
|
508
|
-
end
|
509
|
-
end
|
510
|
-
|
511
|
-
class QuantityRounding < MetronomeSDK::Internal::Type::BaseModel
|
512
|
-
OrHash =
|
513
|
-
T.type_alias do
|
514
|
-
T.any(
|
515
|
-
MetronomeSDK::Models::V1::Contracts::ProductRetrieveResponse::Data::Current::QuantityRounding,
|
516
|
-
MetronomeSDK::Internal::AnyHash
|
517
|
-
)
|
518
|
-
end
|
519
|
-
|
520
|
-
sig { returns(Float) }
|
521
|
-
attr_accessor :decimal_places
|
522
|
-
|
523
|
-
sig do
|
524
|
-
returns(
|
525
|
-
MetronomeSDK::Models::V1::Contracts::ProductRetrieveResponse::Data::Current::QuantityRounding::RoundingMethod::TaggedSymbol
|
526
|
-
)
|
527
|
-
end
|
528
|
-
attr_accessor :rounding_method
|
529
|
-
|
530
|
-
# Optional. Only valid for USAGE products. If provided, the quantity will be
|
531
|
-
# rounded using the provided rounding method and decimal places. For example, if
|
532
|
-
# the method is "round up" and the decimal places is 0, then the quantity will be
|
533
|
-
# rounded up to the nearest integer.
|
534
|
-
sig do
|
535
|
-
params(
|
536
|
-
decimal_places: Float,
|
537
|
-
rounding_method:
|
538
|
-
MetronomeSDK::Models::V1::Contracts::ProductRetrieveResponse::Data::Current::QuantityRounding::RoundingMethod::OrSymbol
|
539
|
-
).returns(T.attached_class)
|
540
|
-
end
|
541
|
-
def self.new(decimal_places:, rounding_method:)
|
542
|
-
end
|
543
|
-
|
544
|
-
sig do
|
545
|
-
override.returns(
|
546
|
-
{
|
547
|
-
decimal_places: Float,
|
548
|
-
rounding_method:
|
549
|
-
MetronomeSDK::Models::V1::Contracts::ProductRetrieveResponse::Data::Current::QuantityRounding::RoundingMethod::TaggedSymbol
|
550
|
-
}
|
551
|
-
)
|
552
|
-
end
|
553
|
-
def to_hash
|
554
|
-
end
|
555
|
-
|
556
|
-
module RoundingMethod
|
557
|
-
extend MetronomeSDK::Internal::Type::Enum
|
558
|
-
|
559
|
-
TaggedSymbol =
|
560
|
-
T.type_alias do
|
561
|
-
T.all(
|
562
|
-
Symbol,
|
563
|
-
MetronomeSDK::Models::V1::Contracts::ProductRetrieveResponse::Data::Current::QuantityRounding::RoundingMethod
|
564
|
-
)
|
565
|
-
end
|
566
|
-
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
567
|
-
|
568
|
-
ROUND_UP =
|
569
|
-
T.let(
|
570
|
-
:ROUND_UP,
|
571
|
-
MetronomeSDK::Models::V1::Contracts::ProductRetrieveResponse::Data::Current::QuantityRounding::RoundingMethod::TaggedSymbol
|
572
|
-
)
|
573
|
-
ROUND_DOWN =
|
574
|
-
T.let(
|
575
|
-
:ROUND_DOWN,
|
576
|
-
MetronomeSDK::Models::V1::Contracts::ProductRetrieveResponse::Data::Current::QuantityRounding::RoundingMethod::TaggedSymbol
|
577
|
-
)
|
578
|
-
ROUND_HALF_UP =
|
579
|
-
T.let(
|
580
|
-
:ROUND_HALF_UP,
|
581
|
-
MetronomeSDK::Models::V1::Contracts::ProductRetrieveResponse::Data::Current::QuantityRounding::RoundingMethod::TaggedSymbol
|
582
|
-
)
|
583
|
-
|
584
|
-
sig do
|
585
|
-
override.returns(
|
586
|
-
T::Array[
|
587
|
-
MetronomeSDK::Models::V1::Contracts::ProductRetrieveResponse::Data::Current::QuantityRounding::RoundingMethod::TaggedSymbol
|
588
|
-
]
|
589
|
-
)
|
590
|
-
end
|
591
|
-
def self.values
|
592
|
-
end
|
593
|
-
end
|
594
|
-
end
|
595
|
-
end
|
596
|
-
|
597
|
-
class Initial < MetronomeSDK::Internal::Type::BaseModel
|
598
|
-
OrHash =
|
599
|
-
T.type_alias do
|
600
|
-
T.any(
|
601
|
-
MetronomeSDK::Models::V1::Contracts::ProductRetrieveResponse::Data::Initial,
|
602
|
-
MetronomeSDK::Internal::AnyHash
|
603
|
-
)
|
604
|
-
end
|
605
|
-
|
606
|
-
sig { returns(Time) }
|
607
|
-
attr_accessor :created_at
|
608
|
-
|
609
|
-
sig { returns(String) }
|
610
|
-
attr_accessor :created_by
|
611
|
-
|
612
|
-
sig { returns(String) }
|
613
|
-
attr_accessor :name
|
614
|
-
|
615
|
-
sig { returns(T.nilable(String)) }
|
616
|
-
attr_reader :billable_metric_id
|
617
|
-
|
618
|
-
sig { params(billable_metric_id: String).void }
|
619
|
-
attr_writer :billable_metric_id
|
620
|
-
|
621
|
-
sig { returns(T.nilable(T::Array[String])) }
|
622
|
-
attr_reader :composite_product_ids
|
623
|
-
|
624
|
-
sig { params(composite_product_ids: T::Array[String]).void }
|
625
|
-
attr_writer :composite_product_ids
|
626
|
-
|
627
|
-
sig { returns(T.nilable(T::Array[String])) }
|
628
|
-
attr_reader :composite_tags
|
629
|
-
|
630
|
-
sig { params(composite_tags: T::Array[String]).void }
|
631
|
-
attr_writer :composite_tags
|
632
|
-
|
633
|
-
sig { returns(T.nilable(T::Boolean)) }
|
634
|
-
attr_reader :exclude_free_usage
|
635
|
-
|
636
|
-
sig { params(exclude_free_usage: T::Boolean).void }
|
637
|
-
attr_writer :exclude_free_usage
|
638
|
-
|
639
|
-
# This field's availability is dependent on your client's configuration.
|
640
|
-
sig { returns(T.nilable(T::Boolean)) }
|
641
|
-
attr_reader :is_refundable
|
642
|
-
|
643
|
-
sig { params(is_refundable: T::Boolean).void }
|
644
|
-
attr_writer :is_refundable
|
645
|
-
|
646
|
-
# This field's availability is dependent on your client's configuration.
|
647
|
-
sig { returns(T.nilable(String)) }
|
648
|
-
attr_reader :netsuite_internal_item_id
|
649
|
-
|
650
|
-
sig { params(netsuite_internal_item_id: String).void }
|
651
|
-
attr_writer :netsuite_internal_item_id
|
652
|
-
|
653
|
-
# This field's availability is dependent on your client's configuration.
|
654
|
-
sig { returns(T.nilable(String)) }
|
655
|
-
attr_reader :netsuite_overage_item_id
|
656
|
-
|
657
|
-
sig { params(netsuite_overage_item_id: String).void }
|
658
|
-
attr_writer :netsuite_overage_item_id
|
659
|
-
|
660
|
-
# For USAGE products only. Groups usage line items on invoices. The superset of
|
661
|
-
# values in the pricing group key and presentation group key must be set as one
|
662
|
-
# compound group key on the billable metric.
|
663
|
-
sig { returns(T.nilable(T::Array[String])) }
|
664
|
-
attr_reader :presentation_group_key
|
665
|
-
|
666
|
-
sig { params(presentation_group_key: T::Array[String]).void }
|
667
|
-
attr_writer :presentation_group_key
|
668
|
-
|
669
|
-
# For USAGE products only. If set, pricing for this product will be determined for
|
670
|
-
# each pricing_group_key value, as opposed to the product as a whole. The superset
|
671
|
-
# of values in the pricing group key and presentation group key must be set as one
|
672
|
-
# compound group key on the billable metric.
|
673
|
-
sig { returns(T.nilable(T::Array[String])) }
|
674
|
-
attr_reader :pricing_group_key
|
675
|
-
|
676
|
-
sig { params(pricing_group_key: T::Array[String]).void }
|
677
|
-
attr_writer :pricing_group_key
|
678
|
-
|
679
|
-
# Optional. Only valid for USAGE products. If provided, the quantity will be
|
680
|
-
# converted using the provided conversion factor and operation. For example, if
|
681
|
-
# the operation is "multiply" and the conversion factor is 100, then the quantity
|
682
|
-
# will be multiplied by 100. This can be used in cases where data is sent in one
|
683
|
-
# unit and priced in another. For example, data could be sent in MB and priced in
|
684
|
-
# GB. In this case, the conversion factor would be 1024 and the operation would be
|
685
|
-
# "divide".
|
686
|
-
sig do
|
687
|
-
returns(
|
688
|
-
T.nilable(
|
689
|
-
MetronomeSDK::Models::V1::Contracts::ProductRetrieveResponse::Data::Initial::QuantityConversion
|
690
|
-
)
|
691
|
-
)
|
692
|
-
end
|
693
|
-
attr_reader :quantity_conversion
|
694
|
-
|
695
|
-
sig do
|
696
|
-
params(
|
697
|
-
quantity_conversion:
|
698
|
-
T.nilable(
|
699
|
-
MetronomeSDK::Models::V1::Contracts::ProductRetrieveResponse::Data::Initial::QuantityConversion::OrHash
|
700
|
-
)
|
701
|
-
).void
|
702
|
-
end
|
703
|
-
attr_writer :quantity_conversion
|
704
|
-
|
705
|
-
# Optional. Only valid for USAGE products. If provided, the quantity will be
|
706
|
-
# rounded using the provided rounding method and decimal places. For example, if
|
707
|
-
# the method is "round up" and the decimal places is 0, then the quantity will be
|
708
|
-
# rounded up to the nearest integer.
|
709
|
-
sig do
|
710
|
-
returns(
|
711
|
-
T.nilable(
|
712
|
-
MetronomeSDK::Models::V1::Contracts::ProductRetrieveResponse::Data::Initial::QuantityRounding
|
713
|
-
)
|
714
|
-
)
|
715
|
-
end
|
716
|
-
attr_reader :quantity_rounding
|
717
|
-
|
718
|
-
sig do
|
719
|
-
params(
|
720
|
-
quantity_rounding:
|
721
|
-
T.nilable(
|
722
|
-
MetronomeSDK::Models::V1::Contracts::ProductRetrieveResponse::Data::Initial::QuantityRounding::OrHash
|
723
|
-
)
|
724
|
-
).void
|
725
|
-
end
|
726
|
-
attr_writer :quantity_rounding
|
727
|
-
|
728
|
-
sig { returns(T.nilable(Time)) }
|
729
|
-
attr_reader :starting_at
|
730
|
-
|
731
|
-
sig { params(starting_at: Time).void }
|
732
|
-
attr_writer :starting_at
|
733
|
-
|
734
|
-
sig { returns(T.nilable(T::Array[String])) }
|
735
|
-
attr_reader :tags
|
736
|
-
|
737
|
-
sig { params(tags: T::Array[String]).void }
|
738
|
-
attr_writer :tags
|
739
|
-
|
740
|
-
sig do
|
741
|
-
params(
|
742
|
-
created_at: Time,
|
743
|
-
created_by: String,
|
744
|
-
name: String,
|
745
|
-
billable_metric_id: String,
|
746
|
-
composite_product_ids: T::Array[String],
|
747
|
-
composite_tags: T::Array[String],
|
748
|
-
exclude_free_usage: T::Boolean,
|
749
|
-
is_refundable: T::Boolean,
|
750
|
-
netsuite_internal_item_id: String,
|
751
|
-
netsuite_overage_item_id: String,
|
752
|
-
presentation_group_key: T::Array[String],
|
753
|
-
pricing_group_key: T::Array[String],
|
754
|
-
quantity_conversion:
|
755
|
-
T.nilable(
|
756
|
-
MetronomeSDK::Models::V1::Contracts::ProductRetrieveResponse::Data::Initial::QuantityConversion::OrHash
|
757
|
-
),
|
758
|
-
quantity_rounding:
|
759
|
-
T.nilable(
|
760
|
-
MetronomeSDK::Models::V1::Contracts::ProductRetrieveResponse::Data::Initial::QuantityRounding::OrHash
|
761
|
-
),
|
762
|
-
starting_at: Time,
|
763
|
-
tags: T::Array[String]
|
764
|
-
).returns(T.attached_class)
|
765
|
-
end
|
766
|
-
def self.new(
|
767
|
-
created_at:,
|
768
|
-
created_by:,
|
769
|
-
name:,
|
770
|
-
billable_metric_id: nil,
|
771
|
-
composite_product_ids: nil,
|
772
|
-
composite_tags: nil,
|
773
|
-
exclude_free_usage: nil,
|
774
|
-
# This field's availability is dependent on your client's configuration.
|
775
|
-
is_refundable: nil,
|
776
|
-
# This field's availability is dependent on your client's configuration.
|
777
|
-
netsuite_internal_item_id: nil,
|
778
|
-
# This field's availability is dependent on your client's configuration.
|
779
|
-
netsuite_overage_item_id: nil,
|
780
|
-
# For USAGE products only. Groups usage line items on invoices. The superset of
|
781
|
-
# values in the pricing group key and presentation group key must be set as one
|
782
|
-
# compound group key on the billable metric.
|
783
|
-
presentation_group_key: nil,
|
784
|
-
# For USAGE products only. If set, pricing for this product will be determined for
|
785
|
-
# each pricing_group_key value, as opposed to the product as a whole. The superset
|
786
|
-
# of values in the pricing group key and presentation group key must be set as one
|
787
|
-
# compound group key on the billable metric.
|
788
|
-
pricing_group_key: nil,
|
789
|
-
# Optional. Only valid for USAGE products. If provided, the quantity will be
|
790
|
-
# converted using the provided conversion factor and operation. For example, if
|
791
|
-
# the operation is "multiply" and the conversion factor is 100, then the quantity
|
792
|
-
# will be multiplied by 100. This can be used in cases where data is sent in one
|
793
|
-
# unit and priced in another. For example, data could be sent in MB and priced in
|
794
|
-
# GB. In this case, the conversion factor would be 1024 and the operation would be
|
795
|
-
# "divide".
|
796
|
-
quantity_conversion: nil,
|
797
|
-
# Optional. Only valid for USAGE products. If provided, the quantity will be
|
798
|
-
# rounded using the provided rounding method and decimal places. For example, if
|
799
|
-
# the method is "round up" and the decimal places is 0, then the quantity will be
|
800
|
-
# rounded up to the nearest integer.
|
801
|
-
quantity_rounding: nil,
|
802
|
-
starting_at: nil,
|
803
|
-
tags: nil
|
804
|
-
)
|
805
|
-
end
|
806
|
-
|
807
|
-
sig do
|
808
|
-
override.returns(
|
809
|
-
{
|
810
|
-
created_at: Time,
|
811
|
-
created_by: String,
|
812
|
-
name: String,
|
813
|
-
billable_metric_id: String,
|
814
|
-
composite_product_ids: T::Array[String],
|
815
|
-
composite_tags: T::Array[String],
|
816
|
-
exclude_free_usage: T::Boolean,
|
817
|
-
is_refundable: T::Boolean,
|
818
|
-
netsuite_internal_item_id: String,
|
819
|
-
netsuite_overage_item_id: String,
|
820
|
-
presentation_group_key: T::Array[String],
|
821
|
-
pricing_group_key: T::Array[String],
|
822
|
-
quantity_conversion:
|
823
|
-
T.nilable(
|
824
|
-
MetronomeSDK::Models::V1::Contracts::ProductRetrieveResponse::Data::Initial::QuantityConversion
|
825
|
-
),
|
826
|
-
quantity_rounding:
|
827
|
-
T.nilable(
|
828
|
-
MetronomeSDK::Models::V1::Contracts::ProductRetrieveResponse::Data::Initial::QuantityRounding
|
829
|
-
),
|
830
|
-
starting_at: Time,
|
831
|
-
tags: T::Array[String]
|
832
|
-
}
|
833
|
-
)
|
834
|
-
end
|
835
|
-
def to_hash
|
836
|
-
end
|
837
|
-
|
838
|
-
class QuantityConversion < MetronomeSDK::Internal::Type::BaseModel
|
839
|
-
OrHash =
|
840
|
-
T.type_alias do
|
841
|
-
T.any(
|
842
|
-
MetronomeSDK::Models::V1::Contracts::ProductRetrieveResponse::Data::Initial::QuantityConversion,
|
843
|
-
MetronomeSDK::Internal::AnyHash
|
844
|
-
)
|
845
|
-
end
|
846
|
-
|
847
|
-
# The factor to multiply or divide the quantity by.
|
848
|
-
sig { returns(Float) }
|
849
|
-
attr_accessor :conversion_factor
|
850
|
-
|
851
|
-
# The operation to perform on the quantity
|
852
|
-
sig do
|
853
|
-
returns(
|
854
|
-
MetronomeSDK::Models::V1::Contracts::ProductRetrieveResponse::Data::Initial::QuantityConversion::Operation::TaggedSymbol
|
855
|
-
)
|
856
|
-
end
|
857
|
-
attr_accessor :operation
|
858
|
-
|
859
|
-
# Optional name for this conversion.
|
860
|
-
sig { returns(T.nilable(String)) }
|
861
|
-
attr_reader :name
|
862
|
-
|
863
|
-
sig { params(name: String).void }
|
864
|
-
attr_writer :name
|
865
|
-
|
866
|
-
# Optional. Only valid for USAGE products. If provided, the quantity will be
|
867
|
-
# converted using the provided conversion factor and operation. For example, if
|
868
|
-
# the operation is "multiply" and the conversion factor is 100, then the quantity
|
869
|
-
# will be multiplied by 100. This can be used in cases where data is sent in one
|
870
|
-
# unit and priced in another. For example, data could be sent in MB and priced in
|
871
|
-
# GB. In this case, the conversion factor would be 1024 and the operation would be
|
872
|
-
# "divide".
|
873
|
-
sig do
|
874
|
-
params(
|
875
|
-
conversion_factor: Float,
|
876
|
-
operation:
|
877
|
-
MetronomeSDK::Models::V1::Contracts::ProductRetrieveResponse::Data::Initial::QuantityConversion::Operation::OrSymbol,
|
878
|
-
name: String
|
879
|
-
).returns(T.attached_class)
|
880
|
-
end
|
881
|
-
def self.new(
|
882
|
-
# The factor to multiply or divide the quantity by.
|
883
|
-
conversion_factor:,
|
884
|
-
# The operation to perform on the quantity
|
885
|
-
operation:,
|
886
|
-
# Optional name for this conversion.
|
887
|
-
name: nil
|
888
|
-
)
|
889
|
-
end
|
890
|
-
|
891
|
-
sig do
|
892
|
-
override.returns(
|
893
|
-
{
|
894
|
-
conversion_factor: Float,
|
895
|
-
operation:
|
896
|
-
MetronomeSDK::Models::V1::Contracts::ProductRetrieveResponse::Data::Initial::QuantityConversion::Operation::TaggedSymbol,
|
897
|
-
name: String
|
898
|
-
}
|
899
|
-
)
|
900
|
-
end
|
901
|
-
def to_hash
|
902
|
-
end
|
903
|
-
|
904
|
-
# The operation to perform on the quantity
|
905
|
-
module Operation
|
906
|
-
extend MetronomeSDK::Internal::Type::Enum
|
907
|
-
|
908
|
-
TaggedSymbol =
|
909
|
-
T.type_alias do
|
910
|
-
T.all(
|
911
|
-
Symbol,
|
912
|
-
MetronomeSDK::Models::V1::Contracts::ProductRetrieveResponse::Data::Initial::QuantityConversion::Operation
|
913
|
-
)
|
914
|
-
end
|
915
|
-
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
916
|
-
|
917
|
-
MULTIPLY =
|
918
|
-
T.let(
|
919
|
-
:MULTIPLY,
|
920
|
-
MetronomeSDK::Models::V1::Contracts::ProductRetrieveResponse::Data::Initial::QuantityConversion::Operation::TaggedSymbol
|
921
|
-
)
|
922
|
-
DIVIDE =
|
923
|
-
T.let(
|
924
|
-
:DIVIDE,
|
925
|
-
MetronomeSDK::Models::V1::Contracts::ProductRetrieveResponse::Data::Initial::QuantityConversion::Operation::TaggedSymbol
|
926
|
-
)
|
927
|
-
|
928
|
-
sig do
|
929
|
-
override.returns(
|
930
|
-
T::Array[
|
931
|
-
MetronomeSDK::Models::V1::Contracts::ProductRetrieveResponse::Data::Initial::QuantityConversion::Operation::TaggedSymbol
|
932
|
-
]
|
933
|
-
)
|
934
|
-
end
|
935
|
-
def self.values
|
936
|
-
end
|
937
|
-
end
|
938
|
-
end
|
939
|
-
|
940
|
-
class QuantityRounding < MetronomeSDK::Internal::Type::BaseModel
|
941
|
-
OrHash =
|
942
|
-
T.type_alias do
|
943
|
-
T.any(
|
944
|
-
MetronomeSDK::Models::V1::Contracts::ProductRetrieveResponse::Data::Initial::QuantityRounding,
|
945
|
-
MetronomeSDK::Internal::AnyHash
|
946
|
-
)
|
947
|
-
end
|
948
|
-
|
949
|
-
sig { returns(Float) }
|
950
|
-
attr_accessor :decimal_places
|
951
|
-
|
952
|
-
sig do
|
953
|
-
returns(
|
954
|
-
MetronomeSDK::Models::V1::Contracts::ProductRetrieveResponse::Data::Initial::QuantityRounding::RoundingMethod::TaggedSymbol
|
955
|
-
)
|
956
|
-
end
|
957
|
-
attr_accessor :rounding_method
|
958
|
-
|
959
|
-
# Optional. Only valid for USAGE products. If provided, the quantity will be
|
960
|
-
# rounded using the provided rounding method and decimal places. For example, if
|
961
|
-
# the method is "round up" and the decimal places is 0, then the quantity will be
|
962
|
-
# rounded up to the nearest integer.
|
963
|
-
sig do
|
964
|
-
params(
|
965
|
-
decimal_places: Float,
|
966
|
-
rounding_method:
|
967
|
-
MetronomeSDK::Models::V1::Contracts::ProductRetrieveResponse::Data::Initial::QuantityRounding::RoundingMethod::OrSymbol
|
968
|
-
).returns(T.attached_class)
|
969
|
-
end
|
970
|
-
def self.new(decimal_places:, rounding_method:)
|
971
|
-
end
|
972
|
-
|
973
|
-
sig do
|
974
|
-
override.returns(
|
975
|
-
{
|
976
|
-
decimal_places: Float,
|
977
|
-
rounding_method:
|
978
|
-
MetronomeSDK::Models::V1::Contracts::ProductRetrieveResponse::Data::Initial::QuantityRounding::RoundingMethod::TaggedSymbol
|
979
|
-
}
|
980
|
-
)
|
981
|
-
end
|
982
|
-
def to_hash
|
983
|
-
end
|
984
|
-
|
985
|
-
module RoundingMethod
|
986
|
-
extend MetronomeSDK::Internal::Type::Enum
|
987
|
-
|
988
|
-
TaggedSymbol =
|
989
|
-
T.type_alias do
|
990
|
-
T.all(
|
991
|
-
Symbol,
|
992
|
-
MetronomeSDK::Models::V1::Contracts::ProductRetrieveResponse::Data::Initial::QuantityRounding::RoundingMethod
|
993
|
-
)
|
994
|
-
end
|
995
|
-
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
996
|
-
|
997
|
-
ROUND_UP =
|
998
|
-
T.let(
|
999
|
-
:ROUND_UP,
|
1000
|
-
MetronomeSDK::Models::V1::Contracts::ProductRetrieveResponse::Data::Initial::QuantityRounding::RoundingMethod::TaggedSymbol
|
1001
|
-
)
|
1002
|
-
ROUND_DOWN =
|
1003
|
-
T.let(
|
1004
|
-
:ROUND_DOWN,
|
1005
|
-
MetronomeSDK::Models::V1::Contracts::ProductRetrieveResponse::Data::Initial::QuantityRounding::RoundingMethod::TaggedSymbol
|
1006
|
-
)
|
1007
|
-
ROUND_HALF_UP =
|
1008
|
-
T.let(
|
1009
|
-
:ROUND_HALF_UP,
|
1010
|
-
MetronomeSDK::Models::V1::Contracts::ProductRetrieveResponse::Data::Initial::QuantityRounding::RoundingMethod::TaggedSymbol
|
1011
|
-
)
|
1012
|
-
|
1013
|
-
sig do
|
1014
|
-
override.returns(
|
1015
|
-
T::Array[
|
1016
|
-
MetronomeSDK::Models::V1::Contracts::ProductRetrieveResponse::Data::Initial::QuantityRounding::RoundingMethod::TaggedSymbol
|
1017
|
-
]
|
1018
|
-
)
|
1019
|
-
end
|
1020
|
-
def self.values
|
1021
|
-
end
|
1022
|
-
end
|
1023
|
-
end
|
1024
|
-
end
|
1025
|
-
|
1026
|
-
module Type
|
1027
|
-
extend MetronomeSDK::Internal::Type::Enum
|
1028
|
-
|
1029
|
-
TaggedSymbol =
|
1030
|
-
T.type_alias do
|
1031
|
-
T.all(
|
1032
|
-
Symbol,
|
1033
|
-
MetronomeSDK::Models::V1::Contracts::ProductRetrieveResponse::Data::Type
|
1034
|
-
)
|
1035
|
-
end
|
1036
|
-
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
1037
|
-
|
1038
|
-
USAGE =
|
1039
|
-
T.let(
|
1040
|
-
:USAGE,
|
1041
|
-
MetronomeSDK::Models::V1::Contracts::ProductRetrieveResponse::Data::Type::TaggedSymbol
|
1042
|
-
)
|
1043
|
-
SUBSCRIPTION =
|
1044
|
-
T.let(
|
1045
|
-
:SUBSCRIPTION,
|
1046
|
-
MetronomeSDK::Models::V1::Contracts::ProductRetrieveResponse::Data::Type::TaggedSymbol
|
1047
|
-
)
|
1048
|
-
COMPOSITE =
|
1049
|
-
T.let(
|
1050
|
-
:COMPOSITE,
|
1051
|
-
MetronomeSDK::Models::V1::Contracts::ProductRetrieveResponse::Data::Type::TaggedSymbol
|
1052
|
-
)
|
1053
|
-
FIXED =
|
1054
|
-
T.let(
|
1055
|
-
:FIXED,
|
1056
|
-
MetronomeSDK::Models::V1::Contracts::ProductRetrieveResponse::Data::Type::TaggedSymbol
|
1057
|
-
)
|
1058
|
-
PRO_SERVICE =
|
1059
|
-
T.let(
|
1060
|
-
:PRO_SERVICE,
|
1061
|
-
MetronomeSDK::Models::V1::Contracts::ProductRetrieveResponse::Data::Type::TaggedSymbol
|
1062
|
-
)
|
1063
|
-
|
1064
|
-
sig do
|
1065
|
-
override.returns(
|
1066
|
-
T::Array[
|
1067
|
-
MetronomeSDK::Models::V1::Contracts::ProductRetrieveResponse::Data::Type::TaggedSymbol
|
1068
|
-
]
|
1069
|
-
)
|
1070
|
-
end
|
1071
|
-
def self.values
|
1072
|
-
end
|
1073
|
-
end
|
1074
|
-
|
1075
|
-
class Update < MetronomeSDK::Internal::Type::BaseModel
|
1076
|
-
OrHash =
|
1077
|
-
T.type_alias do
|
1078
|
-
T.any(
|
1079
|
-
MetronomeSDK::Models::V1::Contracts::ProductRetrieveResponse::Data::Update,
|
1080
|
-
MetronomeSDK::Internal::AnyHash
|
1081
|
-
)
|
1082
|
-
end
|
1083
|
-
|
1084
|
-
sig { returns(Time) }
|
1085
|
-
attr_accessor :created_at
|
1086
|
-
|
1087
|
-
sig { returns(String) }
|
1088
|
-
attr_accessor :created_by
|
1089
|
-
|
1090
|
-
sig { returns(T.nilable(String)) }
|
1091
|
-
attr_reader :billable_metric_id
|
1092
|
-
|
1093
|
-
sig { params(billable_metric_id: String).void }
|
1094
|
-
attr_writer :billable_metric_id
|
1095
|
-
|
1096
|
-
sig { returns(T.nilable(T::Array[String])) }
|
1097
|
-
attr_reader :composite_product_ids
|
1098
|
-
|
1099
|
-
sig { params(composite_product_ids: T::Array[String]).void }
|
1100
|
-
attr_writer :composite_product_ids
|
1101
|
-
|
1102
|
-
sig { returns(T.nilable(T::Array[String])) }
|
1103
|
-
attr_reader :composite_tags
|
1104
|
-
|
1105
|
-
sig { params(composite_tags: T::Array[String]).void }
|
1106
|
-
attr_writer :composite_tags
|
1107
|
-
|
1108
|
-
sig { returns(T.nilable(T::Boolean)) }
|
1109
|
-
attr_reader :exclude_free_usage
|
1110
|
-
|
1111
|
-
sig { params(exclude_free_usage: T::Boolean).void }
|
1112
|
-
attr_writer :exclude_free_usage
|
1113
|
-
|
1114
|
-
sig { returns(T.nilable(T::Boolean)) }
|
1115
|
-
attr_reader :is_refundable
|
1116
|
-
|
1117
|
-
sig { params(is_refundable: T::Boolean).void }
|
1118
|
-
attr_writer :is_refundable
|
1119
|
-
|
1120
|
-
sig { returns(T.nilable(String)) }
|
1121
|
-
attr_reader :name
|
1122
|
-
|
1123
|
-
sig { params(name: String).void }
|
1124
|
-
attr_writer :name
|
1125
|
-
|
1126
|
-
# This field's availability is dependent on your client's configuration.
|
1127
|
-
sig { returns(T.nilable(String)) }
|
1128
|
-
attr_reader :netsuite_internal_item_id
|
1129
|
-
|
1130
|
-
sig { params(netsuite_internal_item_id: String).void }
|
1131
|
-
attr_writer :netsuite_internal_item_id
|
1132
|
-
|
1133
|
-
# This field's availability is dependent on your client's configuration.
|
1134
|
-
sig { returns(T.nilable(String)) }
|
1135
|
-
attr_reader :netsuite_overage_item_id
|
1136
|
-
|
1137
|
-
sig { params(netsuite_overage_item_id: String).void }
|
1138
|
-
attr_writer :netsuite_overage_item_id
|
1139
|
-
|
1140
|
-
# For USAGE products only. Groups usage line items on invoices. The superset of
|
1141
|
-
# values in the pricing group key and presentation group key must be set as one
|
1142
|
-
# compound group key on the billable metric.
|
1143
|
-
sig { returns(T.nilable(T::Array[String])) }
|
1144
|
-
attr_reader :presentation_group_key
|
1145
|
-
|
1146
|
-
sig { params(presentation_group_key: T::Array[String]).void }
|
1147
|
-
attr_writer :presentation_group_key
|
1148
|
-
|
1149
|
-
# For USAGE products only. If set, pricing for this product will be determined for
|
1150
|
-
# each pricing_group_key value, as opposed to the product as a whole. The superset
|
1151
|
-
# of values in the pricing group key and presentation group key must be set as one
|
1152
|
-
# compound group key on the billable metric.
|
1153
|
-
sig { returns(T.nilable(T::Array[String])) }
|
1154
|
-
attr_reader :pricing_group_key
|
1155
|
-
|
1156
|
-
sig { params(pricing_group_key: T::Array[String]).void }
|
1157
|
-
attr_writer :pricing_group_key
|
1158
|
-
|
1159
|
-
# Optional. Only valid for USAGE products. If provided, the quantity will be
|
1160
|
-
# converted using the provided conversion factor and operation. For example, if
|
1161
|
-
# the operation is "multiply" and the conversion factor is 100, then the quantity
|
1162
|
-
# will be multiplied by 100. This can be used in cases where data is sent in one
|
1163
|
-
# unit and priced in another. For example, data could be sent in MB and priced in
|
1164
|
-
# GB. In this case, the conversion factor would be 1024 and the operation would be
|
1165
|
-
# "divide".
|
1166
|
-
sig do
|
1167
|
-
returns(
|
1168
|
-
T.nilable(
|
1169
|
-
MetronomeSDK::Models::V1::Contracts::ProductRetrieveResponse::Data::Update::QuantityConversion
|
1170
|
-
)
|
1171
|
-
)
|
1172
|
-
end
|
1173
|
-
attr_reader :quantity_conversion
|
1174
|
-
|
1175
|
-
sig do
|
1176
|
-
params(
|
1177
|
-
quantity_conversion:
|
1178
|
-
T.nilable(
|
1179
|
-
MetronomeSDK::Models::V1::Contracts::ProductRetrieveResponse::Data::Update::QuantityConversion::OrHash
|
1180
|
-
)
|
1181
|
-
).void
|
1182
|
-
end
|
1183
|
-
attr_writer :quantity_conversion
|
1184
|
-
|
1185
|
-
# Optional. Only valid for USAGE products. If provided, the quantity will be
|
1186
|
-
# rounded using the provided rounding method and decimal places. For example, if
|
1187
|
-
# the method is "round up" and the decimal places is 0, then the quantity will be
|
1188
|
-
# rounded up to the nearest integer.
|
1189
|
-
sig do
|
1190
|
-
returns(
|
1191
|
-
T.nilable(
|
1192
|
-
MetronomeSDK::Models::V1::Contracts::ProductRetrieveResponse::Data::Update::QuantityRounding
|
1193
|
-
)
|
1194
|
-
)
|
1195
|
-
end
|
1196
|
-
attr_reader :quantity_rounding
|
1197
|
-
|
1198
|
-
sig do
|
1199
|
-
params(
|
1200
|
-
quantity_rounding:
|
1201
|
-
T.nilable(
|
1202
|
-
MetronomeSDK::Models::V1::Contracts::ProductRetrieveResponse::Data::Update::QuantityRounding::OrHash
|
1203
|
-
)
|
1204
|
-
).void
|
1205
|
-
end
|
1206
|
-
attr_writer :quantity_rounding
|
1207
|
-
|
1208
|
-
sig { returns(T.nilable(Time)) }
|
1209
|
-
attr_reader :starting_at
|
1210
|
-
|
1211
|
-
sig { params(starting_at: Time).void }
|
1212
|
-
attr_writer :starting_at
|
1213
|
-
|
1214
|
-
sig { returns(T.nilable(T::Array[String])) }
|
1215
|
-
attr_reader :tags
|
1216
|
-
|
1217
|
-
sig { params(tags: T::Array[String]).void }
|
1218
|
-
attr_writer :tags
|
1219
|
-
|
1220
|
-
sig do
|
1221
|
-
params(
|
1222
|
-
created_at: Time,
|
1223
|
-
created_by: String,
|
1224
|
-
billable_metric_id: String,
|
1225
|
-
composite_product_ids: T::Array[String],
|
1226
|
-
composite_tags: T::Array[String],
|
1227
|
-
exclude_free_usage: T::Boolean,
|
1228
|
-
is_refundable: T::Boolean,
|
1229
|
-
name: String,
|
1230
|
-
netsuite_internal_item_id: String,
|
1231
|
-
netsuite_overage_item_id: String,
|
1232
|
-
presentation_group_key: T::Array[String],
|
1233
|
-
pricing_group_key: T::Array[String],
|
1234
|
-
quantity_conversion:
|
1235
|
-
T.nilable(
|
1236
|
-
MetronomeSDK::Models::V1::Contracts::ProductRetrieveResponse::Data::Update::QuantityConversion::OrHash
|
1237
|
-
),
|
1238
|
-
quantity_rounding:
|
1239
|
-
T.nilable(
|
1240
|
-
MetronomeSDK::Models::V1::Contracts::ProductRetrieveResponse::Data::Update::QuantityRounding::OrHash
|
1241
|
-
),
|
1242
|
-
starting_at: Time,
|
1243
|
-
tags: T::Array[String]
|
1244
|
-
).returns(T.attached_class)
|
1245
|
-
end
|
1246
|
-
def self.new(
|
1247
|
-
created_at:,
|
1248
|
-
created_by:,
|
1249
|
-
billable_metric_id: nil,
|
1250
|
-
composite_product_ids: nil,
|
1251
|
-
composite_tags: nil,
|
1252
|
-
exclude_free_usage: nil,
|
1253
|
-
is_refundable: nil,
|
1254
|
-
name: nil,
|
1255
|
-
# This field's availability is dependent on your client's configuration.
|
1256
|
-
netsuite_internal_item_id: nil,
|
1257
|
-
# This field's availability is dependent on your client's configuration.
|
1258
|
-
netsuite_overage_item_id: nil,
|
1259
|
-
# For USAGE products only. Groups usage line items on invoices. The superset of
|
1260
|
-
# values in the pricing group key and presentation group key must be set as one
|
1261
|
-
# compound group key on the billable metric.
|
1262
|
-
presentation_group_key: nil,
|
1263
|
-
# For USAGE products only. If set, pricing for this product will be determined for
|
1264
|
-
# each pricing_group_key value, as opposed to the product as a whole. The superset
|
1265
|
-
# of values in the pricing group key and presentation group key must be set as one
|
1266
|
-
# compound group key on the billable metric.
|
1267
|
-
pricing_group_key: nil,
|
1268
|
-
# Optional. Only valid for USAGE products. If provided, the quantity will be
|
1269
|
-
# converted using the provided conversion factor and operation. For example, if
|
1270
|
-
# the operation is "multiply" and the conversion factor is 100, then the quantity
|
1271
|
-
# will be multiplied by 100. This can be used in cases where data is sent in one
|
1272
|
-
# unit and priced in another. For example, data could be sent in MB and priced in
|
1273
|
-
# GB. In this case, the conversion factor would be 1024 and the operation would be
|
1274
|
-
# "divide".
|
1275
|
-
quantity_conversion: nil,
|
1276
|
-
# Optional. Only valid for USAGE products. If provided, the quantity will be
|
1277
|
-
# rounded using the provided rounding method and decimal places. For example, if
|
1278
|
-
# the method is "round up" and the decimal places is 0, then the quantity will be
|
1279
|
-
# rounded up to the nearest integer.
|
1280
|
-
quantity_rounding: nil,
|
1281
|
-
starting_at: nil,
|
1282
|
-
tags: nil
|
1283
|
-
)
|
1284
|
-
end
|
1285
|
-
|
1286
|
-
sig do
|
1287
|
-
override.returns(
|
1288
|
-
{
|
1289
|
-
created_at: Time,
|
1290
|
-
created_by: String,
|
1291
|
-
billable_metric_id: String,
|
1292
|
-
composite_product_ids: T::Array[String],
|
1293
|
-
composite_tags: T::Array[String],
|
1294
|
-
exclude_free_usage: T::Boolean,
|
1295
|
-
is_refundable: T::Boolean,
|
1296
|
-
name: String,
|
1297
|
-
netsuite_internal_item_id: String,
|
1298
|
-
netsuite_overage_item_id: String,
|
1299
|
-
presentation_group_key: T::Array[String],
|
1300
|
-
pricing_group_key: T::Array[String],
|
1301
|
-
quantity_conversion:
|
1302
|
-
T.nilable(
|
1303
|
-
MetronomeSDK::Models::V1::Contracts::ProductRetrieveResponse::Data::Update::QuantityConversion
|
1304
|
-
),
|
1305
|
-
quantity_rounding:
|
1306
|
-
T.nilable(
|
1307
|
-
MetronomeSDK::Models::V1::Contracts::ProductRetrieveResponse::Data::Update::QuantityRounding
|
1308
|
-
),
|
1309
|
-
starting_at: Time,
|
1310
|
-
tags: T::Array[String]
|
1311
|
-
}
|
1312
|
-
)
|
1313
|
-
end
|
1314
|
-
def to_hash
|
1315
|
-
end
|
1316
|
-
|
1317
|
-
class QuantityConversion < MetronomeSDK::Internal::Type::BaseModel
|
1318
|
-
OrHash =
|
1319
|
-
T.type_alias do
|
1320
|
-
T.any(
|
1321
|
-
MetronomeSDK::Models::V1::Contracts::ProductRetrieveResponse::Data::Update::QuantityConversion,
|
1322
|
-
MetronomeSDK::Internal::AnyHash
|
1323
|
-
)
|
1324
|
-
end
|
1325
|
-
|
1326
|
-
# The factor to multiply or divide the quantity by.
|
1327
|
-
sig { returns(Float) }
|
1328
|
-
attr_accessor :conversion_factor
|
1329
|
-
|
1330
|
-
# The operation to perform on the quantity
|
1331
|
-
sig do
|
1332
|
-
returns(
|
1333
|
-
MetronomeSDK::Models::V1::Contracts::ProductRetrieveResponse::Data::Update::QuantityConversion::Operation::TaggedSymbol
|
1334
|
-
)
|
1335
|
-
end
|
1336
|
-
attr_accessor :operation
|
1337
|
-
|
1338
|
-
# Optional name for this conversion.
|
1339
|
-
sig { returns(T.nilable(String)) }
|
1340
|
-
attr_reader :name
|
1341
|
-
|
1342
|
-
sig { params(name: String).void }
|
1343
|
-
attr_writer :name
|
1344
|
-
|
1345
|
-
# Optional. Only valid for USAGE products. If provided, the quantity will be
|
1346
|
-
# converted using the provided conversion factor and operation. For example, if
|
1347
|
-
# the operation is "multiply" and the conversion factor is 100, then the quantity
|
1348
|
-
# will be multiplied by 100. This can be used in cases where data is sent in one
|
1349
|
-
# unit and priced in another. For example, data could be sent in MB and priced in
|
1350
|
-
# GB. In this case, the conversion factor would be 1024 and the operation would be
|
1351
|
-
# "divide".
|
1352
|
-
sig do
|
1353
|
-
params(
|
1354
|
-
conversion_factor: Float,
|
1355
|
-
operation:
|
1356
|
-
MetronomeSDK::Models::V1::Contracts::ProductRetrieveResponse::Data::Update::QuantityConversion::Operation::OrSymbol,
|
1357
|
-
name: String
|
1358
|
-
).returns(T.attached_class)
|
1359
|
-
end
|
1360
|
-
def self.new(
|
1361
|
-
# The factor to multiply or divide the quantity by.
|
1362
|
-
conversion_factor:,
|
1363
|
-
# The operation to perform on the quantity
|
1364
|
-
operation:,
|
1365
|
-
# Optional name for this conversion.
|
1366
|
-
name: nil
|
1367
|
-
)
|
1368
|
-
end
|
1369
|
-
|
1370
|
-
sig do
|
1371
|
-
override.returns(
|
1372
|
-
{
|
1373
|
-
conversion_factor: Float,
|
1374
|
-
operation:
|
1375
|
-
MetronomeSDK::Models::V1::Contracts::ProductRetrieveResponse::Data::Update::QuantityConversion::Operation::TaggedSymbol,
|
1376
|
-
name: String
|
1377
|
-
}
|
1378
|
-
)
|
1379
|
-
end
|
1380
|
-
def to_hash
|
1381
|
-
end
|
1382
|
-
|
1383
|
-
# The operation to perform on the quantity
|
1384
|
-
module Operation
|
1385
|
-
extend MetronomeSDK::Internal::Type::Enum
|
1386
|
-
|
1387
|
-
TaggedSymbol =
|
1388
|
-
T.type_alias do
|
1389
|
-
T.all(
|
1390
|
-
Symbol,
|
1391
|
-
MetronomeSDK::Models::V1::Contracts::ProductRetrieveResponse::Data::Update::QuantityConversion::Operation
|
1392
|
-
)
|
1393
|
-
end
|
1394
|
-
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
1395
|
-
|
1396
|
-
MULTIPLY =
|
1397
|
-
T.let(
|
1398
|
-
:MULTIPLY,
|
1399
|
-
MetronomeSDK::Models::V1::Contracts::ProductRetrieveResponse::Data::Update::QuantityConversion::Operation::TaggedSymbol
|
1400
|
-
)
|
1401
|
-
DIVIDE =
|
1402
|
-
T.let(
|
1403
|
-
:DIVIDE,
|
1404
|
-
MetronomeSDK::Models::V1::Contracts::ProductRetrieveResponse::Data::Update::QuantityConversion::Operation::TaggedSymbol
|
1405
|
-
)
|
1406
|
-
|
1407
|
-
sig do
|
1408
|
-
override.returns(
|
1409
|
-
T::Array[
|
1410
|
-
MetronomeSDK::Models::V1::Contracts::ProductRetrieveResponse::Data::Update::QuantityConversion::Operation::TaggedSymbol
|
1411
|
-
]
|
1412
|
-
)
|
1413
|
-
end
|
1414
|
-
def self.values
|
1415
|
-
end
|
1416
|
-
end
|
1417
|
-
end
|
1418
|
-
|
1419
|
-
class QuantityRounding < MetronomeSDK::Internal::Type::BaseModel
|
1420
|
-
OrHash =
|
1421
|
-
T.type_alias do
|
1422
|
-
T.any(
|
1423
|
-
MetronomeSDK::Models::V1::Contracts::ProductRetrieveResponse::Data::Update::QuantityRounding,
|
1424
|
-
MetronomeSDK::Internal::AnyHash
|
1425
|
-
)
|
1426
|
-
end
|
1427
|
-
|
1428
|
-
sig { returns(Float) }
|
1429
|
-
attr_accessor :decimal_places
|
1430
|
-
|
1431
|
-
sig do
|
1432
|
-
returns(
|
1433
|
-
MetronomeSDK::Models::V1::Contracts::ProductRetrieveResponse::Data::Update::QuantityRounding::RoundingMethod::TaggedSymbol
|
1434
|
-
)
|
1435
|
-
end
|
1436
|
-
attr_accessor :rounding_method
|
1437
|
-
|
1438
|
-
# Optional. Only valid for USAGE products. If provided, the quantity will be
|
1439
|
-
# rounded using the provided rounding method and decimal places. For example, if
|
1440
|
-
# the method is "round up" and the decimal places is 0, then the quantity will be
|
1441
|
-
# rounded up to the nearest integer.
|
1442
|
-
sig do
|
1443
|
-
params(
|
1444
|
-
decimal_places: Float,
|
1445
|
-
rounding_method:
|
1446
|
-
MetronomeSDK::Models::V1::Contracts::ProductRetrieveResponse::Data::Update::QuantityRounding::RoundingMethod::OrSymbol
|
1447
|
-
).returns(T.attached_class)
|
1448
|
-
end
|
1449
|
-
def self.new(decimal_places:, rounding_method:)
|
1450
|
-
end
|
1451
|
-
|
1452
|
-
sig do
|
1453
|
-
override.returns(
|
1454
|
-
{
|
1455
|
-
decimal_places: Float,
|
1456
|
-
rounding_method:
|
1457
|
-
MetronomeSDK::Models::V1::Contracts::ProductRetrieveResponse::Data::Update::QuantityRounding::RoundingMethod::TaggedSymbol
|
1458
|
-
}
|
1459
|
-
)
|
1460
|
-
end
|
1461
|
-
def to_hash
|
1462
|
-
end
|
1463
|
-
|
1464
|
-
module RoundingMethod
|
1465
|
-
extend MetronomeSDK::Internal::Type::Enum
|
1466
|
-
|
1467
|
-
TaggedSymbol =
|
1468
|
-
T.type_alias do
|
1469
|
-
T.all(
|
1470
|
-
Symbol,
|
1471
|
-
MetronomeSDK::Models::V1::Contracts::ProductRetrieveResponse::Data::Update::QuantityRounding::RoundingMethod
|
1472
|
-
)
|
1473
|
-
end
|
1474
|
-
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
1475
|
-
|
1476
|
-
ROUND_UP =
|
1477
|
-
T.let(
|
1478
|
-
:ROUND_UP,
|
1479
|
-
MetronomeSDK::Models::V1::Contracts::ProductRetrieveResponse::Data::Update::QuantityRounding::RoundingMethod::TaggedSymbol
|
1480
|
-
)
|
1481
|
-
ROUND_DOWN =
|
1482
|
-
T.let(
|
1483
|
-
:ROUND_DOWN,
|
1484
|
-
MetronomeSDK::Models::V1::Contracts::ProductRetrieveResponse::Data::Update::QuantityRounding::RoundingMethod::TaggedSymbol
|
1485
|
-
)
|
1486
|
-
ROUND_HALF_UP =
|
1487
|
-
T.let(
|
1488
|
-
:ROUND_HALF_UP,
|
1489
|
-
MetronomeSDK::Models::V1::Contracts::ProductRetrieveResponse::Data::Update::QuantityRounding::RoundingMethod::TaggedSymbol
|
1490
|
-
)
|
1491
|
-
|
1492
|
-
sig do
|
1493
|
-
override.returns(
|
1494
|
-
T::Array[
|
1495
|
-
MetronomeSDK::Models::V1::Contracts::ProductRetrieveResponse::Data::Update::QuantityRounding::RoundingMethod::TaggedSymbol
|
1496
|
-
]
|
1497
|
-
)
|
1498
|
-
end
|
1499
|
-
def self.values
|
1500
|
-
end
|
1501
|
-
end
|
1502
|
-
end
|
1503
442
|
end
|
1504
443
|
end
|
1505
444
|
end
|