@stripe/extensibility-sdk 0.22.4 → 0.23.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (41) hide show
  1. package/dist/api-surface.d.ts.map +1 -0
  2. package/dist/config-values/generate.cjs +1 -1
  3. package/dist/config-values/generate.d.ts +2 -2
  4. package/dist/config-values/generate.d.ts.map +1 -1
  5. package/dist/config-values/generate.js +1 -1
  6. package/dist/extensibility-sdk-alpha.d.ts +1293 -1
  7. package/dist/extensibility-sdk-beta.d.ts +1293 -1
  8. package/dist/extensibility-sdk-config-values-internal.d.ts +2 -2
  9. package/dist/extensibility-sdk-extensions-alpha.d.ts +56 -77
  10. package/dist/extensibility-sdk-extensions-beta.d.ts +56 -77
  11. package/dist/extensibility-sdk-extensions-internal.d.ts +67 -110
  12. package/dist/extensibility-sdk-extensions-public.d.ts +56 -77
  13. package/dist/extensibility-sdk-internal.d.ts +1304 -1
  14. package/dist/extensibility-sdk-public.d.ts +1293 -1
  15. package/dist/extensions/billing/bill/discount_calculation.d.ts +3 -5
  16. package/dist/extensions/billing/customer_balance_application.d.ts +1 -3
  17. package/dist/extensions/billing/invoice_collection_setting.d.ts +11 -15
  18. package/dist/extensions/billing/prorations.d.ts +21 -30
  19. package/dist/extensions/billing/recurring_billing_item_handling.d.ts +23 -41
  20. package/dist/extensions/billing/types.d.ts +4 -4
  21. package/dist/extensions/core/workflows/custom_action.d.ts +2 -6
  22. package/dist/extensions/extend/workflows/custom_action.d.ts +2 -6
  23. package/dist/index.cjs +2317 -0
  24. package/dist/index.d.ts +2 -1
  25. package/dist/index.d.ts.map +1 -1
  26. package/dist/index.js +2320 -0
  27. package/dist/stdlib/decimal.d.ts +4 -40
  28. package/dist/stdlib/refs.d.ts +7 -21
  29. package/dist/stdlib/scalars.d.ts +16 -71
  30. package/dist/stdlib/type-utils.d.ts +1 -3
  31. package/dist/stdlib/types.d.ts +6 -6
  32. package/dist/tsconfig.build.tsbuildinfo +1 -1
  33. package/package.json +2 -10
  34. package/dist/extensibility-sdk-jsonschema-alpha.d.ts +0 -3
  35. package/dist/extensibility-sdk-jsonschema-beta.d.ts +0 -3
  36. package/dist/extensibility-sdk-jsonschema-internal.d.ts +0 -15
  37. package/dist/extensibility-sdk-jsonschema-public.d.ts +0 -3
  38. package/dist/jsonschema.cjs +0 -18
  39. package/dist/jsonschema.d.ts +0 -2
  40. package/dist/jsonschema.d.ts.map +0 -1
  41. package/dist/jsonschema.js +0 -0
@@ -94,11 +94,11 @@ export declare type ScalarFieldClassification = {
94
94
  };
95
95
 
96
96
  /**
97
- * The package specifier for the stdlib module used in generated import lines.
97
+ * The package specifier used in generated import lines for stdlib types.
98
98
  *
99
99
  * @internal
100
100
  */
101
- export declare const STDLIB_IMPORT_PATH = "@stripe/extensibility-sdk/stdlib";
101
+ export declare const STDLIB_IMPORT_PATH = "@stripe/extensibility-sdk";
102
102
 
103
103
  /** @internal */
104
104
  export declare type StructuralFieldClassification = {
@@ -26,15 +26,15 @@ declare const __stripeType: unique symbol;
26
26
 
27
27
  /** @public */
28
28
  declare type AnyTimeRange = {
29
- value: 'oneTime';
30
29
  at: Date;
30
+ value: 'oneTime';
31
31
  } | {
32
- value: 'timeRange';
33
- startDate: Date;
34
32
  endDate: Date;
33
+ startDate: Date;
34
+ value: 'timeRange';
35
35
  } | {
36
- value: 'other';
37
36
  otherValue: string;
37
+ value: 'other';
38
38
  };
39
39
 
40
40
  declare namespace Bill {
@@ -643,7 +643,7 @@ export declare const DecimalRoundingPresets: Readonly<{
643
643
  /** @public */
644
644
  declare namespace DiscountCalculation {
645
645
  /** @public */
646
- type BillingReason = 'automatic_pending_invoice_item_invoice' | 'manual' | 'subscription' | 'subscription_create' | 'subscription_cycle' | 'subscription_cancel' | 'subscription_threshold' | 'subscription_trial_ended' | 'subscription_update' | 'upcoming' | 'quote_accept';
646
+ type BillingReason = 'automatic_pending_invoice_item_invoice' | 'manual' | 'quote_accept' | 'subscription_cancel' | 'subscription_create' | 'subscription_cycle' | 'subscription_threshold' | 'subscription_trial_ended' | 'subscription_update' | 'subscription' | 'upcoming';
647
647
  /** @public */
648
648
  type PricingTierMode = 'graduated' | 'volume';
649
649
  /** @public */
@@ -653,7 +653,7 @@ declare namespace DiscountCalculation {
653
653
  /** @public */
654
654
  type UsageType = 'licensed' | 'metered';
655
655
  /** @public */
656
- type RecurringPriceInterval = 'day' | 'week' | 'month' | 'year';
656
+ type RecurringPriceInterval = 'day' | 'month' | 'week' | 'year';
657
657
  /**
658
658
  * The result of a discount calculation.
659
659
  * @public
@@ -871,11 +871,11 @@ export { Extend }
871
871
  /** @public */
872
872
  declare namespace InvoiceCollectionSetting {
873
873
  /** @public */
874
- type ParentType = 'subscription' | 'contract' | 'quote' | 'billing_cadence' | 'subscription_schedule' | 'standalone';
874
+ type ParentType = 'billing_cadence' | 'contract' | 'quote' | 'standalone' | 'subscription_schedule' | 'subscription';
875
875
  /** @public */
876
- type PaymentMethodType = 'card' | 'ach_debit' | 'ach_credit_transfer' | 'sepa_debit' | 'sepa_credit_transfer' | 'bacs_debit' | 'au_becs_debit' | 'us_bank_account' | 'link' | 'boleto' | 'oxxo' | 'ideal' | 'bancontact' | 'giropay' | 'eps' | 'p24' | 'sofort' | 'alipay' | 'wechat_pay' | 'klarna' | 'affirm' | 'afterpay_clearpay' | 'cashapp' | 'paypal' | 'multibanco' | 'konbini' | 'promptpay' | 'paynow' | 'grabpay' | 'fpx';
876
+ type PaymentMethodType = 'ach_credit_transfer' | 'ach_debit' | 'affirm' | 'afterpay_clearpay' | 'alipay' | 'au_becs_debit' | 'bacs_debit' | 'bancontact' | 'boleto' | 'card' | 'cashapp' | 'eps' | 'fpx' | 'giropay' | 'grabpay' | 'ideal' | 'klarna' | 'konbini' | 'link' | 'multibanco' | 'oxxo' | 'p24' | 'paynow' | 'paypal' | 'promptpay' | 'sepa_credit_transfer' | 'sepa_debit' | 'sofort' | 'us_bank_account' | 'wechat_pay';
877
877
  /** @public */
878
- type CollectionMethod = 'send_invoice' | 'charge_automatically';
878
+ type CollectionMethod = 'charge_automatically' | 'send_invoice';
879
879
  /**
880
880
  * The result of the invoice collection settings override extension.
881
881
  * @public
@@ -885,18 +885,16 @@ declare namespace InvoiceCollectionSetting {
885
885
  autoAdvance?: boolean;
886
886
  }
887
887
  /** @public */
888
- type InvoiceCollectionRequest = {
889
- /** The current collection settings that would be applied to the invoice. */
890
- collectionSettings: CollectionSettings;
891
- /** The billing resource that triggered invoice creation. */
892
- parent: Parent;
893
- } & ({
894
- payer: 'customer';
888
+ type InvoiceCollectionRequest = ({
895
889
  customer: Customer;
890
+ payer: 'customer';
896
891
  } | {
897
- payer: 'other';
898
892
  otherPayer: string;
899
- });
893
+ payer: 'other';
894
+ }) & {
895
+ collectionSettings: CollectionSettings;
896
+ parent: Parent;
897
+ };
900
898
  /** @public */
901
899
  interface Customer {
902
900
  id: string;
@@ -1017,7 +1015,7 @@ declare namespace Prorations {
1017
1015
  /** @public */
1018
1016
  type PricingTierMode = 'graduated' | 'volume';
1019
1017
  /** @public */
1020
- type RecurringPriceInterval = 'day' | 'week' | 'month' | 'year';
1018
+ type RecurringPriceInterval = 'day' | 'month' | 'week' | 'year';
1021
1019
  /** @public */
1022
1020
  type PriceType = 'one_time' | 'recurring';
1023
1021
  /** @public */
@@ -1055,37 +1053,30 @@ declare namespace Prorations {
1055
1053
  items: ProratableItem[];
1056
1054
  }
1057
1055
  /** @public */
1058
- type ProratableItem = {
1059
- /** Unique identifier for the item. */
1060
- key: string;
1061
- /** Either CREDIT or DEBIT based on whether the item is a credit or debit. */
1062
- type: ItemType;
1063
- /** Whether the item was generated from a proration event. */
1064
- isProration: boolean;
1065
- /** The time period this item covers. */
1066
- servicePeriod: TimeRange;
1067
- /** The default proration factor calculated by Stripe. */
1068
- currentProrationFactor: Decimal;
1069
- /** The duration of the price interval in seconds. */
1070
- priceIntervalDuration: number;
1071
- /** Information about the corresponding debit that a CREDIT item credits against. */
1072
- correspondingDebit?: PreviousDebit;
1073
- } & ({
1074
- priceKind: 'price';
1075
- price: Price;
1056
+ type ProratableItem = ({
1057
+ customPricingUnitOverageRate: CustomPricingUnitOverageRate;
1058
+ priceKind: 'customPricingUnitOverageRate';
1076
1059
  } | {
1077
- priceKind: 'licenseFee';
1078
1060
  licenseFee: LicenseFee;
1061
+ priceKind: 'licenseFee';
1079
1062
  } | {
1080
- priceKind: 'rateCardRate';
1081
- rateCardRate: RateCardRate;
1063
+ otherPriceKind: string;
1064
+ priceKind: 'other';
1082
1065
  } | {
1083
- priceKind: 'customPricingUnitOverageRate';
1084
- customPricingUnitOverageRate: CustomPricingUnitOverageRate;
1066
+ price: Price;
1067
+ priceKind: 'price';
1085
1068
  } | {
1086
- priceKind: 'other';
1087
- otherPriceKind: string;
1088
- });
1069
+ priceKind: 'rateCardRate';
1070
+ rateCardRate: RateCardRate;
1071
+ }) & {
1072
+ correspondingDebit?: PreviousDebit;
1073
+ currentProrationFactor: Decimal;
1074
+ isProration: boolean;
1075
+ key: string;
1076
+ priceIntervalDuration: number;
1077
+ servicePeriod: TimeRange;
1078
+ type: ItemType;
1079
+ };
1089
1080
  /**
1090
1081
  * Information about a previous debit that a credit item offsets.
1091
1082
  * @public
@@ -1234,7 +1225,7 @@ declare namespace RecurringBillingItemHandling {
1234
1225
  /** @public */
1235
1226
  type PricingTierMode = 'graduated' | 'volume';
1236
1227
  /** @public */
1237
- type RecurringPriceInterval = 'day' | 'week' | 'month' | 'year';
1228
+ type RecurringPriceInterval = 'day' | 'month' | 'week' | 'year';
1238
1229
  /** @public */
1239
1230
  type PriceType = 'one_time' | 'recurring';
1240
1231
  /** @public */
@@ -1278,33 +1269,28 @@ declare namespace RecurringBillingItemHandling {
1278
1269
  items: Item[];
1279
1270
  }
1280
1271
  /** @public */
1281
- type Item = {
1282
- /** Unique identifier for the item. */
1283
- key: string;
1284
- /** Either CREDIT or DEBIT based on whether the item is a credit or debit. */
1285
- type: ItemType;
1286
- /** Whether the item was generated from a proration event. */
1287
- isProration: boolean;
1288
- /** The time period this item covers. */
1289
- servicePeriod: AnyTimeRange;
1290
- /** The proration factor for this item. */
1291
- prorationFactor: Decimal;
1292
- } & ({
1293
- priceKind: 'price';
1294
- price: Price;
1272
+ type Item = ({
1273
+ customPricingUnitOverageRate: CustomPricingUnitOverageRate;
1274
+ priceKind: 'customPricingUnitOverageRate';
1295
1275
  } | {
1296
- priceKind: 'licenseFee';
1297
1276
  licenseFee: LicenseFee;
1277
+ priceKind: 'licenseFee';
1298
1278
  } | {
1299
- priceKind: 'rateCardRate';
1300
- rateCardRate: RateCardRate;
1279
+ otherPriceKind: string;
1280
+ priceKind: 'other';
1301
1281
  } | {
1302
- priceKind: 'customPricingUnitOverageRate';
1303
- customPricingUnitOverageRate: CustomPricingUnitOverageRate;
1282
+ price: Price;
1283
+ priceKind: 'price';
1304
1284
  } | {
1305
- priceKind: 'other';
1306
- otherPriceKind: string;
1307
- });
1285
+ priceKind: 'rateCardRate';
1286
+ rateCardRate: RateCardRate;
1287
+ }) & {
1288
+ isProration: boolean;
1289
+ key: string;
1290
+ prorationFactor: Decimal;
1291
+ servicePeriod: AnyTimeRange;
1292
+ type: ItemType;
1293
+ };
1308
1294
  /** @public */
1309
1295
  interface CustomPricingUnitOverageRate {
1310
1296
  id: string;
@@ -1416,17 +1402,10 @@ declare namespace RecurringBillingItemHandling {
1416
1402
  items: ItemWithCreationStrategy[];
1417
1403
  }
1418
1404
  /** @public */
1419
- type ItemWithCreationStrategy = {
1420
- /** The unique identifier of the item, matching a key from the input. */
1421
- key: string;
1422
- } & ({
1423
- creationStrategy: 'doNotCreate';
1424
- } | {
1425
- creationStrategy: 'invoice';
1426
- } | {
1405
+ type ItemWithCreationStrategy = ({
1427
1406
  creationStrategy: 'other';
1428
1407
  otherCreationStrategy: string;
1429
- });
1408
+ } | { creationStrategy: 'doNotCreate' } | { creationStrategy: 'invoice' }) & { key: string };
1430
1409
  /** @public */
1431
1410
  type Invoice = Record<string, never>;
1432
1411
  /** @public */
@@ -26,15 +26,15 @@ declare const __stripeType: unique symbol;
26
26
 
27
27
  /** @public */
28
28
  declare type AnyTimeRange = {
29
- value: 'oneTime';
30
29
  at: Date;
30
+ value: 'oneTime';
31
31
  } | {
32
- value: 'timeRange';
33
- startDate: Date;
34
32
  endDate: Date;
33
+ startDate: Date;
34
+ value: 'timeRange';
35
35
  } | {
36
- value: 'other';
37
36
  otherValue: string;
37
+ value: 'other';
38
38
  };
39
39
 
40
40
  declare namespace Bill {
@@ -643,7 +643,7 @@ export declare const DecimalRoundingPresets: Readonly<{
643
643
  /** @public */
644
644
  declare namespace DiscountCalculation {
645
645
  /** @public */
646
- type BillingReason = 'automatic_pending_invoice_item_invoice' | 'manual' | 'subscription' | 'subscription_create' | 'subscription_cycle' | 'subscription_cancel' | 'subscription_threshold' | 'subscription_trial_ended' | 'subscription_update' | 'upcoming' | 'quote_accept';
646
+ type BillingReason = 'automatic_pending_invoice_item_invoice' | 'manual' | 'quote_accept' | 'subscription_cancel' | 'subscription_create' | 'subscription_cycle' | 'subscription_threshold' | 'subscription_trial_ended' | 'subscription_update' | 'subscription' | 'upcoming';
647
647
  /** @public */
648
648
  type PricingTierMode = 'graduated' | 'volume';
649
649
  /** @public */
@@ -653,7 +653,7 @@ declare namespace DiscountCalculation {
653
653
  /** @public */
654
654
  type UsageType = 'licensed' | 'metered';
655
655
  /** @public */
656
- type RecurringPriceInterval = 'day' | 'week' | 'month' | 'year';
656
+ type RecurringPriceInterval = 'day' | 'month' | 'week' | 'year';
657
657
  /**
658
658
  * The result of a discount calculation.
659
659
  * @public
@@ -871,11 +871,11 @@ export { Extend }
871
871
  /** @public */
872
872
  declare namespace InvoiceCollectionSetting {
873
873
  /** @public */
874
- type ParentType = 'subscription' | 'contract' | 'quote' | 'billing_cadence' | 'subscription_schedule' | 'standalone';
874
+ type ParentType = 'billing_cadence' | 'contract' | 'quote' | 'standalone' | 'subscription_schedule' | 'subscription';
875
875
  /** @public */
876
- type PaymentMethodType = 'card' | 'ach_debit' | 'ach_credit_transfer' | 'sepa_debit' | 'sepa_credit_transfer' | 'bacs_debit' | 'au_becs_debit' | 'us_bank_account' | 'link' | 'boleto' | 'oxxo' | 'ideal' | 'bancontact' | 'giropay' | 'eps' | 'p24' | 'sofort' | 'alipay' | 'wechat_pay' | 'klarna' | 'affirm' | 'afterpay_clearpay' | 'cashapp' | 'paypal' | 'multibanco' | 'konbini' | 'promptpay' | 'paynow' | 'grabpay' | 'fpx';
876
+ type PaymentMethodType = 'ach_credit_transfer' | 'ach_debit' | 'affirm' | 'afterpay_clearpay' | 'alipay' | 'au_becs_debit' | 'bacs_debit' | 'bancontact' | 'boleto' | 'card' | 'cashapp' | 'eps' | 'fpx' | 'giropay' | 'grabpay' | 'ideal' | 'klarna' | 'konbini' | 'link' | 'multibanco' | 'oxxo' | 'p24' | 'paynow' | 'paypal' | 'promptpay' | 'sepa_credit_transfer' | 'sepa_debit' | 'sofort' | 'us_bank_account' | 'wechat_pay';
877
877
  /** @public */
878
- type CollectionMethod = 'send_invoice' | 'charge_automatically';
878
+ type CollectionMethod = 'charge_automatically' | 'send_invoice';
879
879
  /**
880
880
  * The result of the invoice collection settings override extension.
881
881
  * @public
@@ -885,18 +885,16 @@ declare namespace InvoiceCollectionSetting {
885
885
  autoAdvance?: boolean;
886
886
  }
887
887
  /** @public */
888
- type InvoiceCollectionRequest = {
889
- /** The current collection settings that would be applied to the invoice. */
890
- collectionSettings: CollectionSettings;
891
- /** The billing resource that triggered invoice creation. */
892
- parent: Parent;
893
- } & ({
894
- payer: 'customer';
888
+ type InvoiceCollectionRequest = ({
895
889
  customer: Customer;
890
+ payer: 'customer';
896
891
  } | {
897
- payer: 'other';
898
892
  otherPayer: string;
899
- });
893
+ payer: 'other';
894
+ }) & {
895
+ collectionSettings: CollectionSettings;
896
+ parent: Parent;
897
+ };
900
898
  /** @public */
901
899
  interface Customer {
902
900
  id: string;
@@ -1017,7 +1015,7 @@ declare namespace Prorations {
1017
1015
  /** @public */
1018
1016
  type PricingTierMode = 'graduated' | 'volume';
1019
1017
  /** @public */
1020
- type RecurringPriceInterval = 'day' | 'week' | 'month' | 'year';
1018
+ type RecurringPriceInterval = 'day' | 'month' | 'week' | 'year';
1021
1019
  /** @public */
1022
1020
  type PriceType = 'one_time' | 'recurring';
1023
1021
  /** @public */
@@ -1055,37 +1053,30 @@ declare namespace Prorations {
1055
1053
  items: ProratableItem[];
1056
1054
  }
1057
1055
  /** @public */
1058
- type ProratableItem = {
1059
- /** Unique identifier for the item. */
1060
- key: string;
1061
- /** Either CREDIT or DEBIT based on whether the item is a credit or debit. */
1062
- type: ItemType;
1063
- /** Whether the item was generated from a proration event. */
1064
- isProration: boolean;
1065
- /** The time period this item covers. */
1066
- servicePeriod: TimeRange;
1067
- /** The default proration factor calculated by Stripe. */
1068
- currentProrationFactor: Decimal;
1069
- /** The duration of the price interval in seconds. */
1070
- priceIntervalDuration: number;
1071
- /** Information about the corresponding debit that a CREDIT item credits against. */
1072
- correspondingDebit?: PreviousDebit;
1073
- } & ({
1074
- priceKind: 'price';
1075
- price: Price;
1056
+ type ProratableItem = ({
1057
+ customPricingUnitOverageRate: CustomPricingUnitOverageRate;
1058
+ priceKind: 'customPricingUnitOverageRate';
1076
1059
  } | {
1077
- priceKind: 'licenseFee';
1078
1060
  licenseFee: LicenseFee;
1061
+ priceKind: 'licenseFee';
1079
1062
  } | {
1080
- priceKind: 'rateCardRate';
1081
- rateCardRate: RateCardRate;
1063
+ otherPriceKind: string;
1064
+ priceKind: 'other';
1082
1065
  } | {
1083
- priceKind: 'customPricingUnitOverageRate';
1084
- customPricingUnitOverageRate: CustomPricingUnitOverageRate;
1066
+ price: Price;
1067
+ priceKind: 'price';
1085
1068
  } | {
1086
- priceKind: 'other';
1087
- otherPriceKind: string;
1088
- });
1069
+ priceKind: 'rateCardRate';
1070
+ rateCardRate: RateCardRate;
1071
+ }) & {
1072
+ correspondingDebit?: PreviousDebit;
1073
+ currentProrationFactor: Decimal;
1074
+ isProration: boolean;
1075
+ key: string;
1076
+ priceIntervalDuration: number;
1077
+ servicePeriod: TimeRange;
1078
+ type: ItemType;
1079
+ };
1089
1080
  /**
1090
1081
  * Information about a previous debit that a credit item offsets.
1091
1082
  * @public
@@ -1234,7 +1225,7 @@ declare namespace RecurringBillingItemHandling {
1234
1225
  /** @public */
1235
1226
  type PricingTierMode = 'graduated' | 'volume';
1236
1227
  /** @public */
1237
- type RecurringPriceInterval = 'day' | 'week' | 'month' | 'year';
1228
+ type RecurringPriceInterval = 'day' | 'month' | 'week' | 'year';
1238
1229
  /** @public */
1239
1230
  type PriceType = 'one_time' | 'recurring';
1240
1231
  /** @public */
@@ -1278,33 +1269,28 @@ declare namespace RecurringBillingItemHandling {
1278
1269
  items: Item[];
1279
1270
  }
1280
1271
  /** @public */
1281
- type Item = {
1282
- /** Unique identifier for the item. */
1283
- key: string;
1284
- /** Either CREDIT or DEBIT based on whether the item is a credit or debit. */
1285
- type: ItemType;
1286
- /** Whether the item was generated from a proration event. */
1287
- isProration: boolean;
1288
- /** The time period this item covers. */
1289
- servicePeriod: AnyTimeRange;
1290
- /** The proration factor for this item. */
1291
- prorationFactor: Decimal;
1292
- } & ({
1293
- priceKind: 'price';
1294
- price: Price;
1272
+ type Item = ({
1273
+ customPricingUnitOverageRate: CustomPricingUnitOverageRate;
1274
+ priceKind: 'customPricingUnitOverageRate';
1295
1275
  } | {
1296
- priceKind: 'licenseFee';
1297
1276
  licenseFee: LicenseFee;
1277
+ priceKind: 'licenseFee';
1298
1278
  } | {
1299
- priceKind: 'rateCardRate';
1300
- rateCardRate: RateCardRate;
1279
+ otherPriceKind: string;
1280
+ priceKind: 'other';
1301
1281
  } | {
1302
- priceKind: 'customPricingUnitOverageRate';
1303
- customPricingUnitOverageRate: CustomPricingUnitOverageRate;
1282
+ price: Price;
1283
+ priceKind: 'price';
1304
1284
  } | {
1305
- priceKind: 'other';
1306
- otherPriceKind: string;
1307
- });
1285
+ priceKind: 'rateCardRate';
1286
+ rateCardRate: RateCardRate;
1287
+ }) & {
1288
+ isProration: boolean;
1289
+ key: string;
1290
+ prorationFactor: Decimal;
1291
+ servicePeriod: AnyTimeRange;
1292
+ type: ItemType;
1293
+ };
1308
1294
  /** @public */
1309
1295
  interface CustomPricingUnitOverageRate {
1310
1296
  id: string;
@@ -1416,17 +1402,10 @@ declare namespace RecurringBillingItemHandling {
1416
1402
  items: ItemWithCreationStrategy[];
1417
1403
  }
1418
1404
  /** @public */
1419
- type ItemWithCreationStrategy = {
1420
- /** The unique identifier of the item, matching a key from the input. */
1421
- key: string;
1422
- } & ({
1423
- creationStrategy: 'doNotCreate';
1424
- } | {
1425
- creationStrategy: 'invoice';
1426
- } | {
1405
+ type ItemWithCreationStrategy = ({
1427
1406
  creationStrategy: 'other';
1428
1407
  otherCreationStrategy: string;
1429
- });
1408
+ } | { creationStrategy: 'doNotCreate' } | { creationStrategy: 'invoice' }) & { key: string };
1430
1409
  /** @public */
1431
1410
  type Invoice = Record<string, never>;
1432
1411
  /** @public */