@stripe/extensibility-sdk 1.1.0 → 1.3.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 (97) hide show
  1. package/README.md +17 -15
  2. package/dist/config-values/generate.cjs +1 -1
  3. package/dist/config-values/generate.d.ts +1 -1
  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 +29 -157
  7. package/dist/extensibility-sdk-beta.d.ts +29 -157
  8. package/dist/extensibility-sdk-config-values-internal.d.ts +1 -1
  9. package/dist/extensibility-sdk-extensions-alpha.d.ts +7 -157
  10. package/dist/extensibility-sdk-extensions-beta.d.ts +7 -157
  11. package/dist/extensibility-sdk-extensions-billing-bill-discount_calculation-alpha.d.ts +631 -0
  12. package/dist/extensibility-sdk-extensions-billing-bill-discount_calculation-beta.d.ts +631 -0
  13. package/dist/extensibility-sdk-extensions-billing-bill-discount_calculation-internal.d.ts +666 -0
  14. package/dist/extensibility-sdk-extensions-billing-bill-discount_calculation-public.d.ts +631 -0
  15. package/dist/extensibility-sdk-extensions-billing-customer_balance_application-alpha.d.ts +475 -0
  16. package/dist/extensibility-sdk-extensions-billing-customer_balance_application-beta.d.ts +475 -0
  17. package/dist/extensibility-sdk-extensions-billing-customer_balance_application-internal.d.ts +510 -0
  18. package/dist/extensibility-sdk-extensions-billing-customer_balance_application-public.d.ts +475 -0
  19. package/dist/extensibility-sdk-extensions-billing-invoice_collection_options-alpha.d.ts +110 -0
  20. package/dist/extensibility-sdk-extensions-billing-invoice_collection_options-beta.d.ts +110 -0
  21. package/dist/extensibility-sdk-extensions-billing-invoice_collection_options-internal.d.ts +123 -0
  22. package/dist/extensibility-sdk-extensions-billing-invoice_collection_options-public.d.ts +110 -0
  23. package/dist/extensibility-sdk-extensions-billing-prorations-alpha.d.ts +607 -0
  24. package/dist/extensibility-sdk-extensions-billing-prorations-beta.d.ts +607 -0
  25. package/dist/extensibility-sdk-extensions-billing-prorations-internal.d.ts +642 -0
  26. package/dist/extensibility-sdk-extensions-billing-prorations-public.d.ts +607 -0
  27. package/dist/extensibility-sdk-extensions-billing-recurring_billing_item_handling-alpha.d.ts +735 -0
  28. package/dist/extensibility-sdk-extensions-billing-recurring_billing_item_handling-beta.d.ts +735 -0
  29. package/dist/extensibility-sdk-extensions-billing-recurring_billing_item_handling-internal.d.ts +772 -0
  30. package/dist/extensibility-sdk-extensions-billing-recurring_billing_item_handling-public.d.ts +735 -0
  31. package/dist/extensibility-sdk-extensions-core-workflows-custom_action-alpha.d.ts +126 -0
  32. package/dist/extensibility-sdk-extensions-core-workflows-custom_action-beta.d.ts +126 -0
  33. package/dist/extensibility-sdk-extensions-core-workflows-custom_action-internal.d.ts +140 -0
  34. package/dist/extensibility-sdk-extensions-core-workflows-custom_action-public.d.ts +126 -0
  35. package/dist/extensibility-sdk-extensions-extend-workflows-custom_action-alpha.d.ts +126 -0
  36. package/dist/extensibility-sdk-extensions-extend-workflows-custom_action-beta.d.ts +126 -0
  37. package/dist/extensibility-sdk-extensions-extend-workflows-custom_action-internal.d.ts +140 -0
  38. package/dist/extensibility-sdk-extensions-extend-workflows-custom_action-public.d.ts +126 -0
  39. package/dist/extensibility-sdk-extensions-internal.d.ts +7 -157
  40. package/dist/extensibility-sdk-extensions-public.d.ts +7 -157
  41. package/dist/extensibility-sdk-internal-internal.d.ts +2 -2
  42. package/dist/extensibility-sdk-internal.d.ts +145 -162
  43. package/dist/extensibility-sdk-public.d.ts +29 -157
  44. package/dist/extensibility-sdk-stdlib-alpha.d.ts +593 -0
  45. package/dist/extensibility-sdk-stdlib-beta.d.ts +593 -0
  46. package/dist/extensibility-sdk-stdlib-internal.d.ts +1096 -0
  47. package/dist/extensibility-sdk-stdlib-public.d.ts +593 -0
  48. package/dist/extensions/billing/bill/discount_calculation.cjs +437 -0
  49. package/dist/extensions/billing/bill/discount_calculation.d.ts +0 -20
  50. package/dist/extensions/billing/bill/discount_calculation.d.ts.map +1 -1
  51. package/dist/extensions/billing/bill/discount_calculation.js +430 -0
  52. package/dist/extensions/billing/customer_balance_application.cjs +297 -0
  53. package/dist/extensions/billing/customer_balance_application.d.ts +0 -20
  54. package/dist/extensions/billing/customer_balance_application.d.ts.map +1 -1
  55. package/dist/extensions/billing/customer_balance_application.js +284 -0
  56. package/dist/extensions/billing/invoice_collection_options.cjs +166 -0
  57. package/dist/extensions/billing/invoice_collection_options.d.ts +4 -24
  58. package/dist/extensions/billing/invoice_collection_options.d.ts.map +1 -1
  59. package/dist/extensions/billing/invoice_collection_options.js +155 -0
  60. package/dist/extensions/billing/prorations.cjs +501 -0
  61. package/dist/extensions/billing/prorations.d.ts +0 -20
  62. package/dist/extensions/billing/prorations.d.ts.map +1 -1
  63. package/dist/extensions/billing/prorations.js +492 -0
  64. package/dist/extensions/billing/recurring_billing_item_handling.cjs +639 -0
  65. package/dist/extensions/billing/recurring_billing_item_handling.d.ts +0 -30
  66. package/dist/extensions/billing/recurring_billing_item_handling.d.ts.map +1 -1
  67. package/dist/extensions/billing/recurring_billing_item_handling.js +632 -0
  68. package/dist/extensions/core/workflows/custom_action.cjs +124 -0
  69. package/dist/extensions/core/workflows/custom_action.d.ts +1 -21
  70. package/dist/extensions/core/workflows/custom_action.d.ts.map +1 -1
  71. package/dist/extensions/core/workflows/custom_action.js +111 -0
  72. package/dist/extensions/extend/workflows/custom_action.cjs +124 -0
  73. package/dist/extensions/extend/workflows/custom_action.d.ts +1 -21
  74. package/dist/extensions/extend/workflows/custom_action.d.ts.map +1 -1
  75. package/dist/extensions/extend/workflows/custom_action.js +111 -0
  76. package/dist/extensions/index.cjs +27 -265
  77. package/dist/extensions/index.js +27 -265
  78. package/dist/extensions/registry.d.ts +2 -2
  79. package/dist/extensions/registry.d.ts.map +1 -1
  80. package/dist/index.cjs +452 -2390
  81. package/dist/index.js +479 -2286
  82. package/dist/internal.cjs +22 -54
  83. package/dist/internal.js +22 -54
  84. package/dist/stdlib/generated.d.ts +1 -1
  85. package/dist/stdlib/generated.d.ts.map +1 -1
  86. package/dist/stdlib/index.cjs +2003 -0
  87. package/dist/stdlib/index.d.ts +2 -2
  88. package/dist/stdlib/index.d.ts.map +1 -1
  89. package/dist/stdlib/index.js +1943 -0
  90. package/dist/stdlib/transform-strategies.d.ts +46 -6
  91. package/dist/stdlib/transform-strategies.d.ts.map +1 -1
  92. package/dist/stdlib/types.d.ts +82 -0
  93. package/dist/stdlib/types.d.ts.map +1 -1
  94. package/dist/tsconfig.build.tsbuildinfo +1 -1
  95. package/package.json +65 -1
  96. package/dist/stdlib/extension-method.d.ts +0 -27
  97. package/dist/stdlib/extension-method.d.ts.map +0 -1
@@ -0,0 +1,492 @@
1
+ // src/extensions/billing/prorations.ts
2
+ import {
3
+ _ProtoEnum,
4
+ _ProtoWireToType,
5
+ _ShapeDescriptor,
6
+ _TypeToProtoWire,
7
+ _apply,
8
+ _configAppContextFromContext,
9
+ _identity,
10
+ _isPromiseLike,
11
+ _required,
12
+ _translateArray,
13
+ _translateDateTime,
14
+ _translateDecimal,
15
+ _translateEnum,
16
+ _translateMap,
17
+ _translateShape
18
+ } from "@stripe/extensibility-sdk/stdlib";
19
+ var Prorations;
20
+ ((Prorations2) => {
21
+ const pricingTierModeEnumValues = new _ProtoEnum({
22
+ PRICING_TIER_MODE_GRADUATED: "graduated",
23
+ PRICING_TIER_MODE_VOLUME: "volume"
24
+ });
25
+ const recurringPriceIntervalEnumValues = new _ProtoEnum({
26
+ RECURRING_PRICE_INTERVAL_DAY: "day",
27
+ RECURRING_PRICE_INTERVAL_WEEK: "week",
28
+ RECURRING_PRICE_INTERVAL_MONTH: "month",
29
+ RECURRING_PRICE_INTERVAL_YEAR: "year"
30
+ });
31
+ const priceTypeEnumValues = new _ProtoEnum({
32
+ PRICE_TYPE_ONE_TIME: "one_time",
33
+ PRICE_TYPE_RECURRING: "recurring"
34
+ });
35
+ const pricingSchemeEnumValues = new _ProtoEnum({
36
+ PRICING_SCHEME_PER_UNIT: "per_unit",
37
+ PRICING_SCHEME_TIERED: "tiered"
38
+ });
39
+ const usageTypeEnumValues = new _ProtoEnum({
40
+ USAGE_TYPE_LICENSED: "licensed",
41
+ USAGE_TYPE_METERED: "metered"
42
+ });
43
+ const itemTypeEnumValues = new _ProtoEnum({
44
+ ITEM_TYPE_CREDIT: "credit",
45
+ ITEM_TYPE_DEBIT: "debit"
46
+ });
47
+ const currencyEnumValues = new _ProtoEnum({
48
+ CURRENCY_AED: "aed",
49
+ CURRENCY_AFN: "afn",
50
+ CURRENCY_ALL: "all",
51
+ CURRENCY_AMD: "amd",
52
+ CURRENCY_ANG: "ang",
53
+ CURRENCY_AOA: "aoa",
54
+ CURRENCY_APT: "apt",
55
+ CURRENCY_ARB: "arb",
56
+ CURRENCY_ARS: "ars",
57
+ CURRENCY_AUD: "aud",
58
+ CURRENCY_AVAX: "avax",
59
+ CURRENCY_AWG: "awg",
60
+ CURRENCY_AZN: "azn",
61
+ CURRENCY_BAM: "bam",
62
+ CURRENCY_BBD: "bbd",
63
+ CURRENCY_BDT: "bdt",
64
+ CURRENCY_BGN: "bgn",
65
+ CURRENCY_BHD: "bhd",
66
+ CURRENCY_BIF: "bif",
67
+ CURRENCY_BMD: "bmd",
68
+ CURRENCY_BNB: "bnb",
69
+ CURRENCY_BND: "bnd",
70
+ CURRENCY_BOB: "bob",
71
+ CURRENCY_BOV: "bov",
72
+ CURRENCY_BRL: "brl",
73
+ CURRENCY_BSD: "bsd",
74
+ CURRENCY_BTC: "btc",
75
+ CURRENCY_BTN: "btn",
76
+ CURRENCY_BUIDL: "buidl",
77
+ CURRENCY_BWP: "bwp",
78
+ CURRENCY_BYN: "byn",
79
+ CURRENCY_BYR: "byr",
80
+ CURRENCY_BZD: "bzd",
81
+ CURRENCY_CAD: "cad",
82
+ CURRENCY_CDF: "cdf",
83
+ CURRENCY_CELO: "celo",
84
+ CURRENCY_CHE: "che",
85
+ CURRENCY_CHF: "chf",
86
+ CURRENCY_CHW: "chw",
87
+ CURRENCY_CLF: "clf",
88
+ CURRENCY_CLP: "clp",
89
+ CURRENCY_CNY: "cny",
90
+ CURRENCY_COP: "cop",
91
+ CURRENCY_COU: "cou",
92
+ CURRENCY_CRC: "crc",
93
+ CURRENCY_CUC: "cuc",
94
+ CURRENCY_CUP: "cup",
95
+ CURRENCY_CVE: "cve",
96
+ CURRENCY_CZK: "czk",
97
+ CURRENCY_DAI: "dai",
98
+ CURRENCY_DJF: "djf",
99
+ CURRENCY_DKK: "dkk",
100
+ CURRENCY_DOP: "dop",
101
+ CURRENCY_DZD: "dzd",
102
+ CURRENCY_EEK: "eek",
103
+ CURRENCY_EGP: "egp",
104
+ CURRENCY_ERN: "ern",
105
+ CURRENCY_ETB: "etb",
106
+ CURRENCY_ETH: "eth",
107
+ CURRENCY_EUR: "eur",
108
+ CURRENCY_EURC: "eurc",
109
+ CURRENCY_FJD: "fjd",
110
+ CURRENCY_FKP: "fkp",
111
+ CURRENCY_FRXUSD: "frxusd",
112
+ CURRENCY_GBP: "gbp",
113
+ CURRENCY_GEL: "gel",
114
+ CURRENCY_GHC: "ghc",
115
+ CURRENCY_GHS: "ghs",
116
+ CURRENCY_GIP: "gip",
117
+ CURRENCY_GMD: "gmd",
118
+ CURRENCY_GNF: "gnf",
119
+ CURRENCY_GTQ: "gtq",
120
+ CURRENCY_GYD: "gyd",
121
+ CURRENCY_HKD: "hkd",
122
+ CURRENCY_HNL: "hnl",
123
+ CURRENCY_HRK: "hrk",
124
+ CURRENCY_HTG: "htg",
125
+ CURRENCY_HUF: "huf",
126
+ CURRENCY_HYPE: "hype",
127
+ CURRENCY_IDR: "idr",
128
+ CURRENCY_ILS: "ils",
129
+ CURRENCY_INR: "inr",
130
+ CURRENCY_IQD: "iqd",
131
+ CURRENCY_IRR: "irr",
132
+ CURRENCY_ISK: "isk",
133
+ CURRENCY_JMD: "jmd",
134
+ CURRENCY_JOD: "jod",
135
+ CURRENCY_JPY: "jpy",
136
+ CURRENCY_KES: "kes",
137
+ CURRENCY_KGS: "kgs",
138
+ CURRENCY_KHR: "khr",
139
+ CURRENCY_KMF: "kmf",
140
+ CURRENCY_KPW: "kpw",
141
+ CURRENCY_KRW: "krw",
142
+ CURRENCY_KWD: "kwd",
143
+ CURRENCY_KYD: "kyd",
144
+ CURRENCY_KZT: "kzt",
145
+ CURRENCY_LAK: "lak",
146
+ CURRENCY_LBP: "lbp",
147
+ CURRENCY_LKR: "lkr",
148
+ CURRENCY_LRD: "lrd",
149
+ CURRENCY_LSL: "lsl",
150
+ CURRENCY_LTL: "ltl",
151
+ CURRENCY_LVL: "lvl",
152
+ CURRENCY_LYD: "lyd",
153
+ CURRENCY_LZD: "lzd",
154
+ CURRENCY_M: "m",
155
+ CURRENCY_MAD: "mad",
156
+ CURRENCY_MDL: "mdl",
157
+ CURRENCY_MGA: "mga",
158
+ CURRENCY_MKD: "mkd",
159
+ CURRENCY_MMK: "mmk",
160
+ CURRENCY_MNT: "mnt",
161
+ CURRENCY_MON: "mon",
162
+ CURRENCY_MOP: "mop",
163
+ CURRENCY_MRO: "mro",
164
+ CURRENCY_MRU: "mru",
165
+ CURRENCY_MUR: "mur",
166
+ CURRENCY_MVR: "mvr",
167
+ CURRENCY_MWK: "mwk",
168
+ CURRENCY_MXN: "mxn",
169
+ CURRENCY_MXV: "mxv",
170
+ CURRENCY_MYR: "myr",
171
+ CURRENCY_MZN: "mzn",
172
+ CURRENCY_NAD: "nad",
173
+ CURRENCY_NGN: "ngn",
174
+ CURRENCY_NIO: "nio",
175
+ CURRENCY_NOK: "nok",
176
+ CURRENCY_NPR: "npr",
177
+ CURRENCY_NZD: "nzd",
178
+ CURRENCY_OMR: "omr",
179
+ CURRENCY_ORD: "ord",
180
+ CURRENCY_PAB: "pab",
181
+ CURRENCY_PEN: "pen",
182
+ CURRENCY_PGK: "pgk",
183
+ CURRENCY_PHP: "php",
184
+ CURRENCY_PKR: "pkr",
185
+ CURRENCY_PLN: "pln",
186
+ CURRENCY_POL: "pol",
187
+ CURRENCY_PYG: "pyg",
188
+ CURRENCY_PYUSD: "pyusd",
189
+ CURRENCY_QAR: "qar",
190
+ CURRENCY_RD: "rd",
191
+ CURRENCY_RE: "re",
192
+ CURRENCY_RON: "ron",
193
+ CURRENCY_RSD: "rsd",
194
+ CURRENCY_RUB: "rub",
195
+ CURRENCY_RWF: "rwf",
196
+ CURRENCY_SAR: "sar",
197
+ CURRENCY_SBD: "sbd",
198
+ CURRENCY_SCR: "scr",
199
+ CURRENCY_SDG: "sdg",
200
+ CURRENCY_SEK: "sek",
201
+ CURRENCY_SGD: "sgd",
202
+ CURRENCY_SHP: "shp",
203
+ CURRENCY_SLE: "sle",
204
+ CURRENCY_SLL: "sll",
205
+ CURRENCY_SOL: "sol",
206
+ CURRENCY_SOS: "sos",
207
+ CURRENCY_SRD: "srd",
208
+ CURRENCY_SSP: "ssp",
209
+ CURRENCY_STD: "std",
210
+ CURRENCY_STN: "stn",
211
+ CURRENCY_SUI: "sui",
212
+ CURRENCY_SVC: "svc",
213
+ CURRENCY_SYP: "syp",
214
+ CURRENCY_SZL: "szl",
215
+ CURRENCY_THB: "thb",
216
+ CURRENCY_TJS: "tjs",
217
+ CURRENCY_TMT: "tmt",
218
+ CURRENCY_TND: "tnd",
219
+ CURRENCY_TOP: "top",
220
+ CURRENCY_TRX: "trx",
221
+ CURRENCY_TRY: "try",
222
+ CURRENCY_TTD: "ttd",
223
+ CURRENCY_TWD: "twd",
224
+ CURRENCY_TZS: "tzs",
225
+ CURRENCY_UAH: "uah",
226
+ CURRENCY_UGX: "ugx",
227
+ CURRENCY_USD: "usd",
228
+ CURRENCY_USDB: "usdb",
229
+ CURRENCY_USDC: "usdc",
230
+ CURRENCY_USDG: "usdg",
231
+ CURRENCY_USDSUI: "usdsui",
232
+ CURRENCY_USDP: "usdp",
233
+ CURRENCY_USDT: "usdt",
234
+ CURRENCY_USN: "usn",
235
+ CURRENCY_USTB: "ustb",
236
+ CURRENCY_UYI: "uyi",
237
+ CURRENCY_UYU: "uyu",
238
+ CURRENCY_UZS: "uzs",
239
+ CURRENCY_VEF: "vef",
240
+ CURRENCY_VES: "ves",
241
+ CURRENCY_VND: "vnd",
242
+ CURRENCY_VUV: "vuv",
243
+ CURRENCY_WST: "wst",
244
+ CURRENCY_XAF: "xaf",
245
+ CURRENCY_XCD: "xcd",
246
+ CURRENCY_XCG: "xcg",
247
+ CURRENCY_XEUR: "xeur",
248
+ CURRENCY_XLM: "xlm",
249
+ CURRENCY_XOF: "xof",
250
+ CURRENCY_XPF: "xpf",
251
+ CURRENCY_XPL: "xpl",
252
+ CURRENCY_XUSD: "xusd",
253
+ CURRENCY_OPEN_USD: "open_usd",
254
+ CURRENCY_YER: "yer",
255
+ CURRENCY_ZAR: "zar",
256
+ CURRENCY_ZMK: "zmk",
257
+ CURRENCY_ZMW: "zmw",
258
+ CURRENCY_ZWD: "zwd",
259
+ CURRENCY_ZWG: "zwg",
260
+ CURRENCY_ZWL: "zwl"
261
+ });
262
+ const ProrateItemsResultDescriptor = new _ShapeDescriptor(
263
+ "ProrateItemsResult",
264
+ [
265
+ {
266
+ type: "items",
267
+ transform: _required(
268
+ _translateArray(_translateShape(() => ItemWithProrationDescriptor))
269
+ )
270
+ }
271
+ ]
272
+ );
273
+ const ItemWithProrationDescriptor = new _ShapeDescriptor(
274
+ "ItemWithProration",
275
+ [
276
+ { type: "key", transform: _required() },
277
+ { type: "prorationFactor", transform: _required(_translateDecimal) },
278
+ {
279
+ type: "lineItemPeriod",
280
+ transform: _required(_translateShape(() => TimeRangeDescriptor))
281
+ }
282
+ ]
283
+ );
284
+ const ProrateItemsInputDescriptor = new _ShapeDescriptor(
285
+ "ProrateItemsInput",
286
+ [
287
+ {
288
+ type: "items",
289
+ transform: _required(
290
+ _translateArray(_translateShape(() => ProratableItemDescriptor))
291
+ )
292
+ }
293
+ ]
294
+ );
295
+ const ProratableItemDescriptor = new _ShapeDescriptor(
296
+ "ProratableItem",
297
+ [
298
+ { type: "key", transform: _required() },
299
+ { type: "type", transform: _required(_translateEnum(itemTypeEnumValues)) },
300
+ { type: "isProration", transform: _required() },
301
+ {
302
+ type: "servicePeriod",
303
+ transform: _required(_translateShape(() => TimeRangeDescriptor))
304
+ },
305
+ { type: "currentProrationFactor", transform: _required(_translateDecimal) },
306
+ { type: "priceIntervalDuration", transform: _required() },
307
+ {
308
+ type: "correspondingDebit",
309
+ transform: _translateShape(() => PreviousDebitDescriptor)
310
+ }
311
+ ],
312
+ [
313
+ {
314
+ discriminant: "priceKind",
315
+ optional: true,
316
+ branches: [
317
+ {
318
+ wireKey: "price",
319
+ typeKey: "price",
320
+ transform: _translateShape(() => PriceDescriptor)
321
+ },
322
+ {
323
+ wireKey: "licenseFee",
324
+ typeKey: "licenseFee",
325
+ transform: _translateShape(() => LicenseFeeDescriptor)
326
+ },
327
+ {
328
+ wireKey: "rateCardRate",
329
+ typeKey: "rateCardRate",
330
+ transform: _translateShape(() => RateCardRateDescriptor)
331
+ },
332
+ {
333
+ wireKey: "customPricingUnitOverageRate",
334
+ typeKey: "customPricingUnitOverageRate",
335
+ transform: _translateShape(() => CustomPricingUnitOverageRateDescriptor)
336
+ }
337
+ ]
338
+ }
339
+ ]
340
+ );
341
+ const PreviousDebitDescriptor = new _ShapeDescriptor(
342
+ "PreviousDebit",
343
+ [
344
+ {
345
+ type: "servicePeriod",
346
+ transform: _required(_translateShape(() => TimeRangeDescriptor))
347
+ }
348
+ ]
349
+ );
350
+ const CustomPricingUnitOverageRateDescriptor = new _ShapeDescriptor("CustomPricingUnitOverageRate", [
351
+ { type: "id", transform: _required() },
352
+ { type: "metadata", transform: _required(_translateMap(_identity, _identity)) },
353
+ {
354
+ type: "rateCard",
355
+ transform: _required(_translateShape(() => RateCardDescriptor))
356
+ },
357
+ { type: "customPricingUnit", transform: _required() },
358
+ { type: "unitAmount", transform: _required(_translateDecimal) }
359
+ ]);
360
+ const RateCardDescriptor = new _ShapeDescriptor("RateCard", [
361
+ { type: "id", transform: _required() },
362
+ { type: "currency", transform: _required(_translateEnum(currencyEnumValues)) }
363
+ ]);
364
+ const RateCardRateDescriptor = new _ShapeDescriptor(
365
+ "RateCardRate",
366
+ [
367
+ { type: "id", transform: _required() },
368
+ { type: "metadata", transform: _required(_translateMap(_identity, _identity)) },
369
+ {
370
+ type: "rateCard",
371
+ transform: _required(_translateShape(() => RateCardDescriptor))
372
+ },
373
+ { type: "tieringMode", transform: _translateEnum(pricingTierModeEnumValues) },
374
+ {
375
+ type: "tiers",
376
+ transform: _required(
377
+ _translateArray(_translateShape(() => RateCardRateTierDescriptor))
378
+ )
379
+ },
380
+ { type: "unitAmount", transform: _translateDecimal }
381
+ ]
382
+ );
383
+ const RateCardRateTierDescriptor = new _ShapeDescriptor(
384
+ "RateCardRateTier",
385
+ [
386
+ { type: "flatAmount", transform: _translateDecimal },
387
+ { type: "unitAmount", transform: _translateDecimal },
388
+ { type: "upTo", transform: _translateDecimal }
389
+ ]
390
+ );
391
+ const LicenseFeeDescriptor = new _ShapeDescriptor(
392
+ "LicenseFee",
393
+ [
394
+ { type: "id", transform: _required() },
395
+ { type: "lookupKey", transform: _identity },
396
+ { type: "metadata", transform: _required(_translateMap(_identity, _identity)) },
397
+ {
398
+ type: "serviceInterval",
399
+ transform: _required(_translateEnum(recurringPriceIntervalEnumValues))
400
+ },
401
+ { type: "serviceIntervalCount", transform: _required() },
402
+ { type: "tieringMode", transform: _translateEnum(pricingTierModeEnumValues) },
403
+ {
404
+ type: "tiers",
405
+ transform: _required(
406
+ _translateArray(_translateShape(() => LicenseFeeTierDescriptor))
407
+ )
408
+ },
409
+ { type: "currency", transform: _required(_translateEnum(currencyEnumValues)) },
410
+ { type: "unitAmount", transform: _translateDecimal }
411
+ ]
412
+ );
413
+ const LicenseFeeTierDescriptor = new _ShapeDescriptor(
414
+ "LicenseFeeTier",
415
+ [
416
+ { type: "flatAmount", transform: _translateDecimal },
417
+ { type: "unitAmount", transform: _translateDecimal },
418
+ { type: "upTo", transform: _translateDecimal }
419
+ ]
420
+ );
421
+ const PriceDescriptor = new _ShapeDescriptor("Price", [
422
+ { type: "id", transform: _required() },
423
+ { type: "product", transform: _required(_translateShape(() => ProductDescriptor)) },
424
+ { type: "recurring", transform: _translateShape(() => RecurringPriceDescriptor) },
425
+ {
426
+ type: "billingScheme",
427
+ transform: _required(_translateEnum(pricingSchemeEnumValues))
428
+ },
429
+ {
430
+ type: "tiers",
431
+ transform: _required(_translateArray(_translateShape(() => PriceTierDescriptor)))
432
+ },
433
+ { type: "type", transform: _required(_translateEnum(priceTypeEnumValues)) },
434
+ { type: "tiersMode", transform: _translateEnum(pricingTierModeEnumValues) },
435
+ { type: "metadata", transform: _required(_translateMap(_identity, _identity)) },
436
+ { type: "currency", transform: _required(_translateEnum(currencyEnumValues)) },
437
+ { type: "unitAmount", transform: _translateDecimal }
438
+ ]);
439
+ const PriceTierDescriptor = new _ShapeDescriptor(
440
+ "PriceTier",
441
+ [
442
+ { type: "flatAmount", transform: _translateDecimal },
443
+ { type: "unitAmount", transform: _translateDecimal },
444
+ { type: "upTo", transform: _identity }
445
+ ]
446
+ );
447
+ const RecurringPriceDescriptor = new _ShapeDescriptor(
448
+ "RecurringPrice",
449
+ [
450
+ {
451
+ type: "interval",
452
+ transform: _required(_translateEnum(recurringPriceIntervalEnumValues))
453
+ },
454
+ { type: "intervalCount", transform: _required() },
455
+ { type: "usageType", transform: _translateEnum(usageTypeEnumValues) },
456
+ { type: "meter", transform: _identity }
457
+ ]
458
+ );
459
+ const ProductDescriptor = new _ShapeDescriptor("Product", [
460
+ { type: "id", transform: _required() },
461
+ { type: "name", transform: _required() },
462
+ { type: "metadata", transform: _required(_translateMap(_identity, _identity)) }
463
+ ]);
464
+ const TimeRangeDescriptor = new _ShapeDescriptor("TimeRange", [
465
+ { type: "startDate", transform: _required(_translateDateTime) },
466
+ { type: "endDate", transform: _required(_translateDateTime) }
467
+ ]);
468
+ function $platformWrapProrateItems(configTransformer) {
469
+ return (cls, wireArgs, wireConfig, ctx) => {
470
+ const instance = new cls();
471
+ const request = _apply(
472
+ ProrateItemsInputDescriptor,
473
+ _ProtoWireToType,
474
+ wireArgs
475
+ );
476
+ const config = configTransformer !== void 0 ? configTransformer(wireConfig, _configAppContextFromContext(ctx)) : wireConfig;
477
+ const result = instance.prorateItems(request, config, ctx);
478
+ if (_isPromiseLike(result)) {
479
+ return Promise.resolve(result).then((r) => {
480
+ const typedR = r;
481
+ return _apply(ProrateItemsResultDescriptor, _TypeToProtoWire, typedR);
482
+ });
483
+ }
484
+ const typedResult = result;
485
+ return _apply(ProrateItemsResultDescriptor, _TypeToProtoWire, typedResult);
486
+ };
487
+ }
488
+ Prorations2.$platformWrapProrateItems = $platformWrapProrateItems;
489
+ })(Prorations || (Prorations = {}));
490
+ export {
491
+ Prorations
492
+ };