@stripe/extensibility-sdk 0.23.0 → 0.24.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (28) hide show
  1. package/dist/extensibility-sdk-alpha.d.ts +34 -37
  2. package/dist/extensibility-sdk-beta.d.ts +34 -37
  3. package/dist/extensibility-sdk-extensions-alpha.d.ts +39 -37
  4. package/dist/extensibility-sdk-extensions-beta.d.ts +39 -37
  5. package/dist/extensibility-sdk-extensions-internal.d.ts +39 -37
  6. package/dist/extensibility-sdk-extensions-public.d.ts +39 -37
  7. package/dist/extensibility-sdk-internal.d.ts +34 -37
  8. package/dist/extensibility-sdk-public.d.ts +34 -37
  9. package/dist/extensions/billing/bill/discount_calculation.d.ts +4 -5
  10. package/dist/extensions/billing/bill/discount_calculation.d.ts.map +1 -1
  11. package/dist/extensions/billing/customer_balance_application.d.ts +6 -6
  12. package/dist/extensions/billing/customer_balance_application.d.ts.map +1 -1
  13. package/dist/extensions/billing/invoice_collection_setting.d.ts +4 -4
  14. package/dist/extensions/billing/invoice_collection_setting.d.ts.map +1 -1
  15. package/dist/extensions/billing/prorations.d.ts +4 -4
  16. package/dist/extensions/billing/prorations.d.ts.map +1 -1
  17. package/dist/extensions/billing/recurring_billing_item_handling.d.ts +6 -6
  18. package/dist/extensions/billing/recurring_billing_item_handling.d.ts.map +1 -1
  19. package/dist/extensions/core/workflows/custom_action.d.ts +5 -6
  20. package/dist/extensions/core/workflows/custom_action.d.ts.map +1 -1
  21. package/dist/extensions/extend/workflows/custom_action.d.ts +5 -6
  22. package/dist/extensions/extend/workflows/custom_action.d.ts.map +1 -1
  23. package/dist/extensions/index.cjs +0 -2
  24. package/dist/extensions/index.d.ts +6 -2
  25. package/dist/extensions/index.d.ts.map +1 -1
  26. package/dist/extensions/index.js +1 -2
  27. package/dist/tsconfig.build.tsbuildinfo +1 -1
  28. package/package.json +3 -3
@@ -196,22 +196,21 @@ declare namespace CustomAction {
196
196
  * Executes the custom action at workflow runtime. Called when a workflow triggers this action, with the configured input values.
197
197
  * @public
198
198
  */
199
- type ExecuteFunction<Config extends Record<string, unknown>> = (request: ExecuteCustomActionRequest, config: Config, context: Context) => ExecuteCustomActionResponse | PromiseLike<ExecuteCustomActionResponse>;
199
+ type ExecuteFunction<Config> = (request: ExecuteCustomActionRequest, config: Config, context: Context) => ExecuteCustomActionResponse | PromiseLike<ExecuteCustomActionResponse>;
200
200
  /**
201
201
  * Returns the current form state for the action's configuration UI. Called at configuration time (not runtime) to power dynamic form behavior, including dropdown options, dynamic JSON schemas, field visibility, and validation.
202
202
  * @public
203
203
  */
204
- type GetFormStateFunction<Config extends Record<string, unknown>> = (request: GetFormStateRequest, config: Config, context: Context) => GetFormStateResponse | PromiseLike<GetFormStateResponse>;
204
+ type GetFormStateFunction<Config> = (request: GetFormStateRequest, config: Config, context: Context) => GetFormStateResponse | PromiseLike<GetFormStateResponse>;
205
205
  }
206
206
 
207
207
  /**
208
208
  * @example
209
209
  * ```ts
210
- * import type { Core } from '@stripe/extensibility-sdk/extensions';
211
- * import type { Context } from '@stripe/extensibility-sdk/extensions';
210
+ * import type { Core, Context } from '@stripe/extensibility-sdk';
212
211
  *
213
212
  * // eslint-disable-next-line @typescript-eslint/no-empty-object-type
214
- * interface MyCustomActionConfig extends Record<string, unknown> {}
213
+ * interface MyCustomActionConfig {}
215
214
  *
216
215
  * export default class MyCustomAction implements Core.Workflows
217
216
  * .CustomAction<MyCustomActionConfig> {
@@ -242,7 +241,7 @@ declare namespace CustomAction {
242
241
  * ```
243
242
  * @public
244
243
  */
245
- declare interface CustomAction<Config extends Record<string, unknown>> {
244
+ declare interface CustomAction<Config> {
246
245
  execute: CustomAction.ExecuteFunction<Config>;
247
246
  getFormState?: CustomAction.GetFormStateFunction<Config>;
248
247
  }
@@ -331,22 +330,21 @@ declare namespace CustomAction_2 {
331
330
  * Executes the custom action at workflow runtime. Called when a workflow triggers this action, with the configured input values.
332
331
  * @public
333
332
  */
334
- type ExecuteFunction<Config extends Record<string, unknown>> = (request: ExecuteCustomActionRequest, config: Config, context: Context) => ExecuteCustomActionResponse | PromiseLike<ExecuteCustomActionResponse>;
333
+ type ExecuteFunction<Config> = (request: ExecuteCustomActionRequest, config: Config, context: Context) => ExecuteCustomActionResponse | PromiseLike<ExecuteCustomActionResponse>;
335
334
  /**
336
335
  * Returns the current form state for the action's configuration UI. Called at configuration time (not runtime) to power dynamic form behavior, including dropdown options, dynamic JSON schemas, field visibility, and validation.
337
336
  * @public
338
337
  */
339
- type GetFormStateFunction<Config extends Record<string, unknown>> = (request: GetFormStateRequest, config: Config, context: Context) => GetFormStateResponse | PromiseLike<GetFormStateResponse>;
338
+ type GetFormStateFunction<Config> = (request: GetFormStateRequest, config: Config, context: Context) => GetFormStateResponse | PromiseLike<GetFormStateResponse>;
340
339
  }
341
340
 
342
341
  /**
343
342
  * @example
344
343
  * ```ts
345
- * import type { Extend } from '@stripe/extensibility-sdk/extensions';
346
- * import type { Context } from '@stripe/extensibility-sdk/extensions';
344
+ * import type { Extend, Context } from '@stripe/extensibility-sdk';
347
345
  *
348
346
  * // eslint-disable-next-line @typescript-eslint/no-empty-object-type
349
- * interface MyCustomActionConfig extends Record<string, unknown> {}
347
+ * interface MyCustomActionConfig {}
350
348
  *
351
349
  * export default class MyCustomAction implements Extend.Workflows
352
350
  * .CustomAction<MyCustomActionConfig> {
@@ -377,7 +375,7 @@ declare namespace CustomAction_2 {
377
375
  * ```
378
376
  * @public
379
377
  */
380
- declare interface CustomAction_2<Config extends Record<string, unknown>> {
378
+ declare interface CustomAction_2<Config> {
381
379
  execute: CustomAction_2.ExecuteFunction<Config>;
382
380
  getFormState?: CustomAction_2.GetFormStateFunction<Config>;
383
381
  }
@@ -427,21 +425,21 @@ declare namespace CustomerBalanceApplication {
427
425
  * Determines how much of the customer's balance to apply toward a bill total. The script receives the invoice total and current customer balance, then returns how much of that balance to apply.
428
426
  * @public
429
427
  */
430
- type ComputeAppliedCustomerBalanceFunction<Config extends Record<string, unknown>> = (request: CustomerBalanceApplicationInput, config: Config, context: Context) => CustomerBalanceApplicationResult;
428
+ type ComputeAppliedCustomerBalanceFunction<Config> = (request: CustomerBalanceApplicationInput, config: Config, context: Context) => CustomerBalanceApplicationResult;
431
429
  }
432
430
 
433
431
  /**
434
432
  * @example
435
433
  * ```ts
436
- * import type { Billing, Context } from '@stripe/extensibility-sdk/extensions';
434
+ * import type { Billing, Context } from '@stripe/extensibility-sdk';
437
435
  *
438
436
  * // eslint-disable-next-line @typescript-eslint/no-empty-object-type
439
- * interface MyCustomerBalanceApplicationConfig extends Record<string, unknown> {}
437
+ * interface MyBalanceAppConfig {}
440
438
  *
441
- * export default class MyCustomerBalanceApplication implements Billing.CustomerBalanceApplication<MyCustomerBalanceApplicationConfig> {
439
+ * export default class MyBalanceApp implements Billing.CustomerBalanceApplication<MyBalanceAppConfig> {
442
440
  * computeAppliedCustomerBalance(
443
441
  * request: Billing.CustomerBalanceApplication.CustomerBalanceApplicationInput,
444
- * _config: MyCustomerBalanceApplicationConfig,
442
+ * _config: MyBalanceAppConfig,
445
443
  * _context: Context
446
444
  * ) {
447
445
  * // TODO: implement your customer balance logic here
@@ -455,7 +453,7 @@ declare namespace CustomerBalanceApplication {
455
453
  * ```
456
454
  * @public
457
455
  */
458
- declare interface CustomerBalanceApplication<Config extends Record<string, unknown>> {
456
+ declare interface CustomerBalanceApplication<Config> {
459
457
  computeAppliedCustomerBalance: CustomerBalanceApplication.ComputeAppliedCustomerBalanceFunction<Config>;
460
458
  }
461
459
 
@@ -878,17 +876,16 @@ declare namespace DiscountCalculation {
878
876
  * Computes discount amounts for a discountable item and returns a discount result.
879
877
  * @public
880
878
  */
881
- type ComputeDiscountsFunction<Config extends Record<string, unknown>> = (request: DiscountableItem, config: Config, context: Context) => DiscountResult;
879
+ type ComputeDiscountsFunction<Config> = (request: DiscountableItem, config: Config, context: Context) => DiscountResult;
882
880
  }
883
881
 
884
882
  /**
885
883
  * @example
886
884
  * ```ts
887
- * import type { Billing } from '@stripe/extensibility-sdk/extensions';
888
- * import type { Context } from '@stripe/extensibility-sdk/extensions';
885
+ * import type { Billing, Context } from '@stripe/extensibility-sdk';
889
886
  *
890
887
  * // eslint-disable-next-line @typescript-eslint/no-empty-object-type
891
- * interface MyDiscountCalculationConfig extends Record<string, unknown> {}
888
+ * interface MyDiscountCalculationConfig {}
892
889
  *
893
890
  * export default class MyDiscountCalculation implements Billing.Bill
894
891
  * .DiscountCalculation<MyDiscountCalculationConfig> {
@@ -908,7 +905,7 @@ declare namespace DiscountCalculation {
908
905
  * ```
909
906
  * @public
910
907
  */
911
- declare interface DiscountCalculation<Config extends Record<string, unknown>> {
908
+ declare interface DiscountCalculation<Config> {
912
909
  computeDiscounts: DiscountCalculation.ComputeDiscountsFunction<Config>;
913
910
  }
914
911
 
@@ -1044,16 +1041,16 @@ declare namespace InvoiceCollectionSetting {
1044
1041
  * Overrides invoice collection settings before a draft invoice is created.
1045
1042
  * @public
1046
1043
  */
1047
- type CollectionOverrideFunction<Config extends Record<string, unknown>> = (request: InvoiceCollectionRequest, config: Config, context: Context) => InvoiceCollectionResponse;
1044
+ type CollectionOverrideFunction<Config> = (request: InvoiceCollectionRequest, config: Config, context: Context) => InvoiceCollectionResponse;
1048
1045
  }
1049
1046
 
1050
1047
  /**
1051
1048
  * @example
1052
1049
  * ```ts
1053
- * import type { Billing, Context } from '@stripe/extensibility-sdk/extensions';
1050
+ * import type { Billing, Context } from '@stripe/extensibility-sdk';
1054
1051
  *
1055
1052
  * // eslint-disable-next-line @typescript-eslint/no-empty-object-type
1056
- * interface MyInvoiceCollectionSettingConfig extends Record<string, unknown> {}
1053
+ * interface MyInvoiceCollectionSettingConfig {}
1057
1054
  *
1058
1055
  * export default class MyInvoiceCollectionSetting implements Billing.InvoiceCollectionSetting<MyInvoiceCollectionSettingConfig> {
1059
1056
  * collectionOverride(
@@ -1070,7 +1067,7 @@ declare namespace InvoiceCollectionSetting {
1070
1067
  * ```
1071
1068
  * @public
1072
1069
  */
1073
- declare interface InvoiceCollectionSetting<Config extends Record<string, unknown>> {
1070
+ declare interface InvoiceCollectionSetting<Config> {
1074
1071
  collectionOverride: InvoiceCollectionSetting.CollectionOverrideFunction<Config>;
1075
1072
  }
1076
1073
 
@@ -1341,16 +1338,16 @@ declare namespace Prorations {
1341
1338
  * Calculates prorated amounts for subscription items when changes occur mid-billing period. The script receives the invoice items, then returns computed proration factors for each item.
1342
1339
  * @public
1343
1340
  */
1344
- type ProrateItemsFunction<Config extends Record<string, unknown>> = (request: ProrateItemsInput, config: Config, context: Context) => ProrateItemsResult;
1341
+ type ProrateItemsFunction<Config> = (request: ProrateItemsInput, config: Config, context: Context) => ProrateItemsResult;
1345
1342
  }
1346
1343
 
1347
1344
  /**
1348
1345
  * @example
1349
1346
  * ```ts
1350
- * import type { Billing, Context } from '@stripe/extensibility-sdk/extensions';
1347
+ * import type { Billing, Context } from '@stripe/extensibility-sdk';
1351
1348
  *
1352
1349
  * // eslint-disable-next-line @typescript-eslint/no-empty-object-type
1353
- * interface MyProrationsConfig extends Record<string, unknown> {}
1350
+ * interface MyProrationsConfig {}
1354
1351
  *
1355
1352
  * export default class MyProrations implements Billing.Prorations<MyProrationsConfig> {
1356
1353
  * prorateItems(
@@ -1369,7 +1366,7 @@ declare namespace Prorations {
1369
1366
  * ```
1370
1367
  * @public
1371
1368
  */
1372
- declare interface Prorations<Config extends Record<string, unknown>> {
1369
+ declare interface Prorations<Config> {
1373
1370
  prorateItems: Prorations.ProrateItemsFunction<Config>;
1374
1371
  }
1375
1372
 
@@ -1614,26 +1611,26 @@ declare namespace RecurringBillingItemHandling {
1614
1611
  * Runs before invoice items are created. Decides whether each item should be created or skipped.
1615
1612
  * @public
1616
1613
  */
1617
- type BeforeItemCreationFunction<Config extends Record<string, unknown>> = (request: BeforeItemCreationInput, config: Config, context: Context) => BeforeItemCreationResult;
1614
+ type BeforeItemCreationFunction<Config> = (request: BeforeItemCreationInput, config: Config, context: Context) => BeforeItemCreationResult;
1618
1615
  /**
1619
1616
  * Runs before invoices are created. Decides which items to include on the invoice. Items not included are deferred as pending invoice items.
1620
1617
  * @public
1621
1618
  */
1622
- type FilterItemsFunction<Config extends Record<string, unknown>> = (request: FilterItemsInput, config: Config, context: Context) => FilterItemsResult;
1619
+ type FilterItemsFunction<Config> = (request: FilterItemsInput, config: Config, context: Context) => FilterItemsResult;
1623
1620
  /**
1624
1621
  * Runs before invoices are created. Decides how items are grouped across one or more invoices.
1625
1622
  * @public
1626
1623
  */
1627
- type GroupItemsFunction<Config extends Record<string, unknown>> = (request: GroupItemsInput, config: Config, context: Context) => GroupItemsResult;
1624
+ type GroupItemsFunction<Config> = (request: GroupItemsInput, config: Config, context: Context) => GroupItemsResult;
1628
1625
  }
1629
1626
 
1630
1627
  /**
1631
1628
  * @example
1632
1629
  * ```ts
1633
- * import type { Billing, Context } from '@stripe/extensibility-sdk/extensions';
1630
+ * import type { Billing, Context } from '@stripe/extensibility-sdk';
1634
1631
  *
1635
1632
  * // eslint-disable-next-line @typescript-eslint/no-empty-object-type
1636
- * interface MyRecurringBillingItemHandlingConfig extends Record<string, unknown> {}
1633
+ * interface MyRecurringBillingItemHandlingConfig {}
1637
1634
  *
1638
1635
  * export default class MyRecurringBillingItemHandling implements Billing.RecurringBillingItemHandling<MyRecurringBillingItemHandlingConfig> {
1639
1636
  * beforeItemCreation(
@@ -1676,7 +1673,7 @@ declare namespace RecurringBillingItemHandling {
1676
1673
  * ```
1677
1674
  * @public
1678
1675
  */
1679
- declare interface RecurringBillingItemHandling<Config extends Record<string, unknown>> {
1676
+ declare interface RecurringBillingItemHandling<Config> {
1680
1677
  beforeItemCreation: RecurringBillingItemHandling.BeforeItemCreationFunction<Config>;
1681
1678
  filterItems: RecurringBillingItemHandling.FilterItemsFunction<Config>;
1682
1679
  groupItems: RecurringBillingItemHandling.GroupItemsFunction<Config>;
@@ -196,22 +196,21 @@ declare namespace CustomAction {
196
196
  * Executes the custom action at workflow runtime. Called when a workflow triggers this action, with the configured input values.
197
197
  * @public
198
198
  */
199
- type ExecuteFunction<Config extends Record<string, unknown>> = (request: ExecuteCustomActionRequest, config: Config, context: Context) => ExecuteCustomActionResponse | PromiseLike<ExecuteCustomActionResponse>;
199
+ type ExecuteFunction<Config> = (request: ExecuteCustomActionRequest, config: Config, context: Context) => ExecuteCustomActionResponse | PromiseLike<ExecuteCustomActionResponse>;
200
200
  /**
201
201
  * Returns the current form state for the action's configuration UI. Called at configuration time (not runtime) to power dynamic form behavior, including dropdown options, dynamic JSON schemas, field visibility, and validation.
202
202
  * @public
203
203
  */
204
- type GetFormStateFunction<Config extends Record<string, unknown>> = (request: GetFormStateRequest, config: Config, context: Context) => GetFormStateResponse | PromiseLike<GetFormStateResponse>;
204
+ type GetFormStateFunction<Config> = (request: GetFormStateRequest, config: Config, context: Context) => GetFormStateResponse | PromiseLike<GetFormStateResponse>;
205
205
  }
206
206
 
207
207
  /**
208
208
  * @example
209
209
  * ```ts
210
- * import type { Core } from '@stripe/extensibility-sdk/extensions';
211
- * import type { Context } from '@stripe/extensibility-sdk/extensions';
210
+ * import type { Core, Context } from '@stripe/extensibility-sdk';
212
211
  *
213
212
  * // eslint-disable-next-line @typescript-eslint/no-empty-object-type
214
- * interface MyCustomActionConfig extends Record<string, unknown> {}
213
+ * interface MyCustomActionConfig {}
215
214
  *
216
215
  * export default class MyCustomAction implements Core.Workflows
217
216
  * .CustomAction<MyCustomActionConfig> {
@@ -242,7 +241,7 @@ declare namespace CustomAction {
242
241
  * ```
243
242
  * @public
244
243
  */
245
- declare interface CustomAction<Config extends Record<string, unknown>> {
244
+ declare interface CustomAction<Config> {
246
245
  execute: CustomAction.ExecuteFunction<Config>;
247
246
  getFormState?: CustomAction.GetFormStateFunction<Config>;
248
247
  }
@@ -331,22 +330,21 @@ declare namespace CustomAction_2 {
331
330
  * Executes the custom action at workflow runtime. Called when a workflow triggers this action, with the configured input values.
332
331
  * @public
333
332
  */
334
- type ExecuteFunction<Config extends Record<string, unknown>> = (request: ExecuteCustomActionRequest, config: Config, context: Context) => ExecuteCustomActionResponse | PromiseLike<ExecuteCustomActionResponse>;
333
+ type ExecuteFunction<Config> = (request: ExecuteCustomActionRequest, config: Config, context: Context) => ExecuteCustomActionResponse | PromiseLike<ExecuteCustomActionResponse>;
335
334
  /**
336
335
  * Returns the current form state for the action's configuration UI. Called at configuration time (not runtime) to power dynamic form behavior, including dropdown options, dynamic JSON schemas, field visibility, and validation.
337
336
  * @public
338
337
  */
339
- type GetFormStateFunction<Config extends Record<string, unknown>> = (request: GetFormStateRequest, config: Config, context: Context) => GetFormStateResponse | PromiseLike<GetFormStateResponse>;
338
+ type GetFormStateFunction<Config> = (request: GetFormStateRequest, config: Config, context: Context) => GetFormStateResponse | PromiseLike<GetFormStateResponse>;
340
339
  }
341
340
 
342
341
  /**
343
342
  * @example
344
343
  * ```ts
345
- * import type { Extend } from '@stripe/extensibility-sdk/extensions';
346
- * import type { Context } from '@stripe/extensibility-sdk/extensions';
344
+ * import type { Extend, Context } from '@stripe/extensibility-sdk';
347
345
  *
348
346
  * // eslint-disable-next-line @typescript-eslint/no-empty-object-type
349
- * interface MyCustomActionConfig extends Record<string, unknown> {}
347
+ * interface MyCustomActionConfig {}
350
348
  *
351
349
  * export default class MyCustomAction implements Extend.Workflows
352
350
  * .CustomAction<MyCustomActionConfig> {
@@ -377,7 +375,7 @@ declare namespace CustomAction_2 {
377
375
  * ```
378
376
  * @public
379
377
  */
380
- declare interface CustomAction_2<Config extends Record<string, unknown>> {
378
+ declare interface CustomAction_2<Config> {
381
379
  execute: CustomAction_2.ExecuteFunction<Config>;
382
380
  getFormState?: CustomAction_2.GetFormStateFunction<Config>;
383
381
  }
@@ -427,21 +425,21 @@ declare namespace CustomerBalanceApplication {
427
425
  * Determines how much of the customer's balance to apply toward a bill total. The script receives the invoice total and current customer balance, then returns how much of that balance to apply.
428
426
  * @public
429
427
  */
430
- type ComputeAppliedCustomerBalanceFunction<Config extends Record<string, unknown>> = (request: CustomerBalanceApplicationInput, config: Config, context: Context) => CustomerBalanceApplicationResult;
428
+ type ComputeAppliedCustomerBalanceFunction<Config> = (request: CustomerBalanceApplicationInput, config: Config, context: Context) => CustomerBalanceApplicationResult;
431
429
  }
432
430
 
433
431
  /**
434
432
  * @example
435
433
  * ```ts
436
- * import type { Billing, Context } from '@stripe/extensibility-sdk/extensions';
434
+ * import type { Billing, Context } from '@stripe/extensibility-sdk';
437
435
  *
438
436
  * // eslint-disable-next-line @typescript-eslint/no-empty-object-type
439
- * interface MyCustomerBalanceApplicationConfig extends Record<string, unknown> {}
437
+ * interface MyBalanceAppConfig {}
440
438
  *
441
- * export default class MyCustomerBalanceApplication implements Billing.CustomerBalanceApplication<MyCustomerBalanceApplicationConfig> {
439
+ * export default class MyBalanceApp implements Billing.CustomerBalanceApplication<MyBalanceAppConfig> {
442
440
  * computeAppliedCustomerBalance(
443
441
  * request: Billing.CustomerBalanceApplication.CustomerBalanceApplicationInput,
444
- * _config: MyCustomerBalanceApplicationConfig,
442
+ * _config: MyBalanceAppConfig,
445
443
  * _context: Context
446
444
  * ) {
447
445
  * // TODO: implement your customer balance logic here
@@ -455,7 +453,7 @@ declare namespace CustomerBalanceApplication {
455
453
  * ```
456
454
  * @public
457
455
  */
458
- declare interface CustomerBalanceApplication<Config extends Record<string, unknown>> {
456
+ declare interface CustomerBalanceApplication<Config> {
459
457
  computeAppliedCustomerBalance: CustomerBalanceApplication.ComputeAppliedCustomerBalanceFunction<Config>;
460
458
  }
461
459
 
@@ -878,17 +876,16 @@ declare namespace DiscountCalculation {
878
876
  * Computes discount amounts for a discountable item and returns a discount result.
879
877
  * @public
880
878
  */
881
- type ComputeDiscountsFunction<Config extends Record<string, unknown>> = (request: DiscountableItem, config: Config, context: Context) => DiscountResult;
879
+ type ComputeDiscountsFunction<Config> = (request: DiscountableItem, config: Config, context: Context) => DiscountResult;
882
880
  }
883
881
 
884
882
  /**
885
883
  * @example
886
884
  * ```ts
887
- * import type { Billing } from '@stripe/extensibility-sdk/extensions';
888
- * import type { Context } from '@stripe/extensibility-sdk/extensions';
885
+ * import type { Billing, Context } from '@stripe/extensibility-sdk';
889
886
  *
890
887
  * // eslint-disable-next-line @typescript-eslint/no-empty-object-type
891
- * interface MyDiscountCalculationConfig extends Record<string, unknown> {}
888
+ * interface MyDiscountCalculationConfig {}
892
889
  *
893
890
  * export default class MyDiscountCalculation implements Billing.Bill
894
891
  * .DiscountCalculation<MyDiscountCalculationConfig> {
@@ -908,7 +905,7 @@ declare namespace DiscountCalculation {
908
905
  * ```
909
906
  * @public
910
907
  */
911
- declare interface DiscountCalculation<Config extends Record<string, unknown>> {
908
+ declare interface DiscountCalculation<Config> {
912
909
  computeDiscounts: DiscountCalculation.ComputeDiscountsFunction<Config>;
913
910
  }
914
911
 
@@ -1044,16 +1041,16 @@ declare namespace InvoiceCollectionSetting {
1044
1041
  * Overrides invoice collection settings before a draft invoice is created.
1045
1042
  * @public
1046
1043
  */
1047
- type CollectionOverrideFunction<Config extends Record<string, unknown>> = (request: InvoiceCollectionRequest, config: Config, context: Context) => InvoiceCollectionResponse;
1044
+ type CollectionOverrideFunction<Config> = (request: InvoiceCollectionRequest, config: Config, context: Context) => InvoiceCollectionResponse;
1048
1045
  }
1049
1046
 
1050
1047
  /**
1051
1048
  * @example
1052
1049
  * ```ts
1053
- * import type { Billing, Context } from '@stripe/extensibility-sdk/extensions';
1050
+ * import type { Billing, Context } from '@stripe/extensibility-sdk';
1054
1051
  *
1055
1052
  * // eslint-disable-next-line @typescript-eslint/no-empty-object-type
1056
- * interface MyInvoiceCollectionSettingConfig extends Record<string, unknown> {}
1053
+ * interface MyInvoiceCollectionSettingConfig {}
1057
1054
  *
1058
1055
  * export default class MyInvoiceCollectionSetting implements Billing.InvoiceCollectionSetting<MyInvoiceCollectionSettingConfig> {
1059
1056
  * collectionOverride(
@@ -1070,7 +1067,7 @@ declare namespace InvoiceCollectionSetting {
1070
1067
  * ```
1071
1068
  * @public
1072
1069
  */
1073
- declare interface InvoiceCollectionSetting<Config extends Record<string, unknown>> {
1070
+ declare interface InvoiceCollectionSetting<Config> {
1074
1071
  collectionOverride: InvoiceCollectionSetting.CollectionOverrideFunction<Config>;
1075
1072
  }
1076
1073
 
@@ -1341,16 +1338,16 @@ declare namespace Prorations {
1341
1338
  * Calculates prorated amounts for subscription items when changes occur mid-billing period. The script receives the invoice items, then returns computed proration factors for each item.
1342
1339
  * @public
1343
1340
  */
1344
- type ProrateItemsFunction<Config extends Record<string, unknown>> = (request: ProrateItemsInput, config: Config, context: Context) => ProrateItemsResult;
1341
+ type ProrateItemsFunction<Config> = (request: ProrateItemsInput, config: Config, context: Context) => ProrateItemsResult;
1345
1342
  }
1346
1343
 
1347
1344
  /**
1348
1345
  * @example
1349
1346
  * ```ts
1350
- * import type { Billing, Context } from '@stripe/extensibility-sdk/extensions';
1347
+ * import type { Billing, Context } from '@stripe/extensibility-sdk';
1351
1348
  *
1352
1349
  * // eslint-disable-next-line @typescript-eslint/no-empty-object-type
1353
- * interface MyProrationsConfig extends Record<string, unknown> {}
1350
+ * interface MyProrationsConfig {}
1354
1351
  *
1355
1352
  * export default class MyProrations implements Billing.Prorations<MyProrationsConfig> {
1356
1353
  * prorateItems(
@@ -1369,7 +1366,7 @@ declare namespace Prorations {
1369
1366
  * ```
1370
1367
  * @public
1371
1368
  */
1372
- declare interface Prorations<Config extends Record<string, unknown>> {
1369
+ declare interface Prorations<Config> {
1373
1370
  prorateItems: Prorations.ProrateItemsFunction<Config>;
1374
1371
  }
1375
1372
 
@@ -1614,26 +1611,26 @@ declare namespace RecurringBillingItemHandling {
1614
1611
  * Runs before invoice items are created. Decides whether each item should be created or skipped.
1615
1612
  * @public
1616
1613
  */
1617
- type BeforeItemCreationFunction<Config extends Record<string, unknown>> = (request: BeforeItemCreationInput, config: Config, context: Context) => BeforeItemCreationResult;
1614
+ type BeforeItemCreationFunction<Config> = (request: BeforeItemCreationInput, config: Config, context: Context) => BeforeItemCreationResult;
1618
1615
  /**
1619
1616
  * Runs before invoices are created. Decides which items to include on the invoice. Items not included are deferred as pending invoice items.
1620
1617
  * @public
1621
1618
  */
1622
- type FilterItemsFunction<Config extends Record<string, unknown>> = (request: FilterItemsInput, config: Config, context: Context) => FilterItemsResult;
1619
+ type FilterItemsFunction<Config> = (request: FilterItemsInput, config: Config, context: Context) => FilterItemsResult;
1623
1620
  /**
1624
1621
  * Runs before invoices are created. Decides how items are grouped across one or more invoices.
1625
1622
  * @public
1626
1623
  */
1627
- type GroupItemsFunction<Config extends Record<string, unknown>> = (request: GroupItemsInput, config: Config, context: Context) => GroupItemsResult;
1624
+ type GroupItemsFunction<Config> = (request: GroupItemsInput, config: Config, context: Context) => GroupItemsResult;
1628
1625
  }
1629
1626
 
1630
1627
  /**
1631
1628
  * @example
1632
1629
  * ```ts
1633
- * import type { Billing, Context } from '@stripe/extensibility-sdk/extensions';
1630
+ * import type { Billing, Context } from '@stripe/extensibility-sdk';
1634
1631
  *
1635
1632
  * // eslint-disable-next-line @typescript-eslint/no-empty-object-type
1636
- * interface MyRecurringBillingItemHandlingConfig extends Record<string, unknown> {}
1633
+ * interface MyRecurringBillingItemHandlingConfig {}
1637
1634
  *
1638
1635
  * export default class MyRecurringBillingItemHandling implements Billing.RecurringBillingItemHandling<MyRecurringBillingItemHandlingConfig> {
1639
1636
  * beforeItemCreation(
@@ -1676,7 +1673,7 @@ declare namespace RecurringBillingItemHandling {
1676
1673
  * ```
1677
1674
  * @public
1678
1675
  */
1679
- declare interface RecurringBillingItemHandling<Config extends Record<string, unknown>> {
1676
+ declare interface RecurringBillingItemHandling<Config> {
1680
1677
  beforeItemCreation: RecurringBillingItemHandling.BeforeItemCreationFunction<Config>;
1681
1678
  filterItems: RecurringBillingItemHandling.FilterItemsFunction<Config>;
1682
1679
  groupItems: RecurringBillingItemHandling.GroupItemsFunction<Config>;