@bash-app/bash-common 30.276.0 → 30.279.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.
@@ -3,7 +3,7 @@
3
3
  * Testing business logic without database dependencies
4
4
  */
5
5
  import { BashPassTier, MembershipTier } from "@prisma/client";
6
- import { calculateDiscountFromPromoCode, convertCentsToDollars, convertDollarsToCents, calculateBashAppFee, calculateBashAppFeeWithMembershipDiscount, calculateStripeFee, calculateStripeProcessingFeeCents, calculateTotalPriceWithoutTax, calculateTotalBashPoints, calculateStripeDonationFee, calculateServiceFeeWithMembershipDiscount, calculatePartnerFeeWithMembershipDiscount, calculateBashPlatformFeeCents, splitBashPlatformFeeForTicketCheckout, computeTicketApplicationFeeAmountCents, userHasActiveBashPass, getEffectiveBashPassTier, getBashPassMonthlyCapRemaining, higherBashPassTier, membershipGrantsBashPassTier, VENUE_PRICING_PLAN_DATA, } from "../paymentUtils.js";
6
+ import { calculateDiscountFromPromoCode, convertCentsToDollars, convertDollarsToCents, calculateBashAppFee, calculateBashAppFeeWithMembershipDiscount, calculateStripeFee, calculateStripeProcessingFeeCents, calculateTotalPriceWithoutTax, calculateTotalBashPoints, calculateStripeDonationFee, calculateServiceFeeWithMembershipDiscount, calculatePartnerFeeWithMembershipDiscount, calculateBashPlatformFeeCents, splitBashPlatformFeeForTicketCheckout, computeTicketApplicationFeeAmountCents, computeGuestTicketCheckoutBreakdown, guestAllInUnitPriceCents, guestCheckoutHasNoAddedFees, lowestGuestAllInPriceCents, hostAbsorbsTicketProcessing, userHasActiveBashPass, getEffectiveBashPassTier, getBashPassMonthlyCapRemaining, higherBashPassTier, membershipGrantsBashPassTier, VENUE_PRICING_PLAN_DATA, } from "../paymentUtils.js";
7
7
  import { VenuePricingPlan } from "@prisma/client";
8
8
  describe("PaymentUtils - Core Functions", () => {
9
9
  describe("Currency Conversion", () => {
@@ -127,7 +127,7 @@ describe("PaymentUtils - Core Functions", () => {
127
127
  });
128
128
  expect(explicitFalse).toEqual(defaulted);
129
129
  });
130
- test("computeTicketApplicationFeeAmountCents — verified nonprofit host: zero Bash platform, Stripe untouched", () => {
130
+ test("computeTicketApplicationFeeAmountCents — verified nonprofit host: zero Bash platform, guest may pay processing when GuestPays", () => {
131
131
  const r = computeTicketApplicationFeeAmountCents({
132
132
  discountedSubtotalCents: 10000,
133
133
  platformFeeEnabled: true,
@@ -138,11 +138,12 @@ describe("PaymentUtils - Core Functions", () => {
138
138
  });
139
139
  expect(r.bashPlatformTotalCents).toBe(0);
140
140
  expect(r.guestPlatformLineCents).toBe(0);
141
- expect(r.totalChargedCents).toBe(10000);
142
- expect(r.stripeProcessingCents).toBe(calculateStripeProcessingFeeCents(10000));
141
+ expect(r.guestProcessingLineCents).toBe(calculateStripeProcessingFeeCents(10000));
142
+ expect(r.totalChargedCents).toBe(10000 + calculateStripeProcessingFeeCents(10000));
143
+ expect(r.stripeProcessingCents).toBe(calculateStripeProcessingFeeCents(r.totalChargedCents));
143
144
  expect(r.applicationFeeAmountCents).toBe(r.stripeProcessingCents);
144
145
  });
145
- test("computeTicketApplicationFeeAmountCents — verified nonprofit waiver overrides feeHandling=GuestPays", () => {
146
+ test("computeTicketApplicationFeeAmountCents — verified nonprofit waiver overrides platform on GuestPays", () => {
146
147
  const nonNonprofit = computeTicketApplicationFeeAmountCents({
147
148
  discountedSubtotalCents: 5000,
148
149
  platformFeeEnabled: true,
@@ -152,7 +153,8 @@ describe("PaymentUtils - Core Functions", () => {
152
153
  });
153
154
  expect(nonNonprofit.bashPlatformTotalCents).toBe(250);
154
155
  expect(nonNonprofit.guestPlatformLineCents).toBe(250);
155
- expect(nonNonprofit.totalChargedCents).toBe(5250);
156
+ expect(nonNonprofit.guestProcessingLineCents).toBe(calculateStripeProcessingFeeCents(5000));
157
+ expect(nonNonprofit.totalChargedCents).toBe(5000 + 250 + calculateStripeProcessingFeeCents(5000));
156
158
  const nonprofit = computeTicketApplicationFeeAmountCents({
157
159
  discountedSubtotalCents: 5000,
158
160
  platformFeeEnabled: true,
@@ -163,7 +165,8 @@ describe("PaymentUtils - Core Functions", () => {
163
165
  });
164
166
  expect(nonprofit.bashPlatformTotalCents).toBe(0);
165
167
  expect(nonprofit.guestPlatformLineCents).toBe(0);
166
- expect(nonprofit.totalChargedCents).toBe(5000);
168
+ expect(nonprofit.guestProcessingLineCents).toBe(calculateStripeProcessingFeeCents(5000));
169
+ expect(nonprofit.totalChargedCents).toBe(5000 + calculateStripeProcessingFeeCents(5000));
167
170
  expect(nonprofit.applicationFeeAmountCents).toBe(nonprofit.stripeProcessingCents);
168
171
  });
169
172
  test("computeTicketApplicationFeeAmountCents — verified nonprofit waiver beats any membership-tier math", () => {
@@ -183,7 +186,14 @@ describe("PaymentUtils - Core Functions", () => {
183
186
  });
184
187
  expect(r.bashPlatformTotalCents).toBe(0);
185
188
  expect(r.guestPlatformLineCents).toBe(0);
186
- expect(r.totalChargedCents).toBe(12345);
189
+ if (tier.feeHandling === "HostAbsorbs") {
190
+ expect(r.guestProcessingLineCents).toBe(0);
191
+ expect(r.totalChargedCents).toBe(12345);
192
+ }
193
+ else {
194
+ expect(r.guestProcessingLineCents).toBe(calculateStripeProcessingFeeCents(12345));
195
+ expect(r.totalChargedCents).toBe(12345 + calculateStripeProcessingFeeCents(12345));
196
+ }
187
197
  expect(r.applicationFeeAmountCents).toBe(r.stripeProcessingCents);
188
198
  }
189
199
  });
@@ -325,6 +335,50 @@ describe("PaymentUtils - Core Functions", () => {
325
335
  expect(plan.percentageFee).toBe(0);
326
336
  });
327
337
  });
338
+ describe("guest ticket checkout breakdown (No Fees for Attendees)", () => {
339
+ test("HostAbsorbs — $20 ticket → $20 due, no processing line", () => {
340
+ const r = computeGuestTicketCheckoutBreakdown({
341
+ discountedSubtotalCents: 2000,
342
+ platformFeeEnabled: false,
343
+ platformFeeRate: 0.03,
344
+ feeHandling: "HostAbsorbs",
345
+ bashPassWaivesGuestFee: false,
346
+ });
347
+ expect(r.ticketSubtotalCents).toBe(2000);
348
+ expect(r.guestProcessingLineCents).toBe(0);
349
+ expect(r.totalDueCents).toBe(2000);
350
+ });
351
+ test("GuestPays — $20 ticket → $20.88 all-in with processing line on subtotal", () => {
352
+ const processing = calculateStripeProcessingFeeCents(2000);
353
+ expect(processing).toBe(88);
354
+ const r = computeGuestTicketCheckoutBreakdown({
355
+ discountedSubtotalCents: 2000,
356
+ platformFeeEnabled: false,
357
+ platformFeeRate: 0.03,
358
+ feeHandling: "GuestPays",
359
+ bashPassWaivesGuestFee: false,
360
+ });
361
+ expect(r.guestProcessingLineCents).toBe(88);
362
+ expect(r.totalDueCents).toBe(2088);
363
+ });
364
+ test("guestCheckoutHasNoAddedFees and display helpers", () => {
365
+ expect(guestCheckoutHasNoAddedFees({ feeHandling: "HostAbsorbs" })).toBe(true);
366
+ expect(guestCheckoutHasNoAddedFees({ feeHandling: "GuestPays" })).toBe(false);
367
+ expect(guestCheckoutHasNoAddedFees({
368
+ feeHandling: "HostAbsorbs",
369
+ externalTicketUrl: "https://eventbrite.com/x",
370
+ })).toBe(false);
371
+ expect(hostAbsorbsTicketProcessing("HostAbsorbs")).toBe(true);
372
+ expect(hostAbsorbsTicketProcessing("GuestPays")).toBe(false);
373
+ expect(guestAllInUnitPriceCents(2000, { feeHandling: "HostAbsorbs" })).toBe(2000);
374
+ expect(guestAllInUnitPriceCents(2000, { feeHandling: "GuestPays" })).toBe(2088);
375
+ expect(lowestGuestAllInPriceCents([
376
+ { price: 5000, pricingType: "USD" },
377
+ { price: 2000, pricingType: "USD" },
378
+ { price: 100, pricingType: "BASHPOINTS" },
379
+ ], { feeHandling: "HostAbsorbs" })).toBe(2000);
380
+ });
381
+ });
328
382
  describe("splitBashPlatformFeeForTicketCheckout edge cases", () => {
329
383
  test("returns zeros when platform fee disabled", () => {
330
384
  expect(splitBashPlatformFeeForTicketCheckout({
@@ -1 +1 @@
1
- {"version":3,"file":"paymentUtils.test.js","sourceRoot":"","sources":["../../../src/utils/__tests__/paymentUtils.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"paymentUtils.test.js","sourceRoot":"","sources":["../../../src/utils/__tests__/paymentUtils.test.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { RecurrenceEndsType, RecurringFrequency, } from "@prisma/client";
2
2
  import { DateTime } from "luxon";
3
- import { getCompactRunFirstAndLastOccurrence, getRecurringBashEventPossibleLuxonTimes, } from "../recurrenceUtils.js";
3
+ import { getCompactRunFirstAndLastOccurrence, getRecurringBashEventPossibleLuxonTimes, occurrenceOverrideKey, parseOccurrenceOverrides, } from "../recurrenceUtils.js";
4
4
  function buildRecurrence(partial) {
5
5
  return {
6
6
  id: "r1",
@@ -62,4 +62,85 @@ describe("getCompactRunFirstAndLastOccurrence", () => {
62
62
  expect(getCompactRunFirstAndLastOccurrence(start, end, recurrence, "UTC")).toBeNull();
63
63
  });
64
64
  });
65
+ describe("occurrenceOverrideKey", () => {
66
+ it("returns the same key for Date and ISO string of the same instant", () => {
67
+ const iso = "2026-06-15T20:00:00.000Z";
68
+ expect(occurrenceOverrideKey(new Date(iso))).toBe(occurrenceOverrideKey(iso));
69
+ });
70
+ });
71
+ describe("parseOccurrenceOverrides", () => {
72
+ it("returns empty object for nullish or non-object input", () => {
73
+ expect(parseOccurrenceOverrides(null)).toEqual({});
74
+ expect(parseOccurrenceOverrides(undefined)).toEqual({});
75
+ expect(parseOccurrenceOverrides([])).toEqual({});
76
+ expect(parseOccurrenceOverrides("bad")).toEqual({});
77
+ });
78
+ it("parses valid override entries and ignores malformed ones", () => {
79
+ expect(parseOccurrenceOverrides({
80
+ "Jun 15, 2026 8:00 PM": {
81
+ startDateTime: "2026-06-16T20:00:00.000Z",
82
+ endDateTime: "2026-06-16T22:00:00.000Z",
83
+ },
84
+ bad: { noStart: true },
85
+ empty: null,
86
+ })).toEqual({
87
+ "Jun 15, 2026 8:00 PM": {
88
+ startDateTime: "2026-06-16T20:00:00.000Z",
89
+ endDateTime: "2026-06-16T22:00:00.000Z",
90
+ },
91
+ });
92
+ });
93
+ });
94
+ describe("occurrence exceptions in getRecurringBashEventPossibleLuxonTimes", () => {
95
+ it("drops skipped occurrences from excludedDates", () => {
96
+ const base = DateTime.utc().plus({ weeks: 2 }).startOf("day");
97
+ const start = base
98
+ .set({ hour: 20, minute: 0, second: 0, millisecond: 0 })
99
+ .toJSDate();
100
+ const recurrence = buildRecurrence({
101
+ frequency: RecurringFrequency.Daily,
102
+ interval: 1,
103
+ repeatCount: 3,
104
+ endsType: RecurrenceEndsType.AFTER_COUNT,
105
+ });
106
+ const baseline = getRecurringBashEventPossibleLuxonTimes(start, recurrence);
107
+ expect(baseline).toHaveLength(3);
108
+ const skipped = baseline[1];
109
+ const withSkip = buildRecurrence({
110
+ ...recurrence,
111
+ excludedDates: [skipped.toJSDate()],
112
+ });
113
+ const result = getRecurringBashEventPossibleLuxonTimes(start, withSkip);
114
+ expect(result).toHaveLength(2);
115
+ expect(result.map((d) => d.toMillis())).not.toContain(skipped.toMillis());
116
+ });
117
+ it("applies moved occurrences from occurrenceOverrides", () => {
118
+ const base = DateTime.utc().plus({ weeks: 2 }).startOf("day");
119
+ const start = base
120
+ .set({ hour: 20, minute: 0, second: 0, millisecond: 0 })
121
+ .toJSDate();
122
+ const recurrence = buildRecurrence({
123
+ frequency: RecurringFrequency.Daily,
124
+ interval: 1,
125
+ repeatCount: 3,
126
+ endsType: RecurrenceEndsType.AFTER_COUNT,
127
+ });
128
+ const baseline = getRecurringBashEventPossibleLuxonTimes(start, recurrence);
129
+ const original = baseline[1];
130
+ const movedStart = original.plus({ days: 2 }).toISO();
131
+ const withMove = buildRecurrence({
132
+ ...recurrence,
133
+ occurrenceOverrides: {
134
+ [occurrenceOverrideKey(original)]: {
135
+ startDateTime: movedStart,
136
+ endDateTime: null,
137
+ },
138
+ },
139
+ });
140
+ const result = getRecurringBashEventPossibleLuxonTimes(start, withMove);
141
+ expect(result).toHaveLength(3);
142
+ expect(result.map((d) => d.toMillis())).toContain(DateTime.fromISO(movedStart).toMillis());
143
+ expect(result.map((d) => d.toMillis())).not.toContain(original.toMillis());
144
+ });
145
+ });
65
146
  //# sourceMappingURL=recurrenceUtils.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"recurrenceUtils.test.js","sourceRoot":"","sources":["../../../src/utils/__tests__/recurrenceUtils.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"recurrenceUtils.test.js","sourceRoot":"","sources":["../../../src/utils/__tests__/recurrenceUtils.test.ts"],"names":[],"mappings":"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"}
@@ -99,6 +99,50 @@ export declare function splitBashPlatformFeeForTicketCheckout(args: {
99
99
  feeHandling: string | null | undefined;
100
100
  bashPassWaivesGuestFee: boolean;
101
101
  }): BashPlatformTicketFeeSplit;
102
+ /** Event fields needed for guest-facing ticket fee display and checkout breakdown. */
103
+ export type TicketFeeEventContext = {
104
+ feeHandling?: string | null;
105
+ platformFeeEnabled?: boolean;
106
+ platformFeeRate?: number;
107
+ externalTicketUrl?: string | null;
108
+ };
109
+ export type GuestTicketCheckoutBreakdown = {
110
+ ticketSubtotalCents: number;
111
+ /** Guest-visible Stripe processing line (0 when host absorbs). */
112
+ guestProcessingLineCents: number;
113
+ guestPlatformLineCents: number;
114
+ /** Amount the guest pays (before tax). */
115
+ totalDueCents: number;
116
+ /** Stripe's 2.9% + $0.30 pass-through on the charge amount. */
117
+ stripeProcessingCents: number;
118
+ bashPlatformTotalCents: number;
119
+ applicationFeeAmountCents: number;
120
+ };
121
+ /** True when the host absorbs Stripe processing (`feeHandling` default). */
122
+ export declare function hostAbsorbsTicketProcessing(feeHandling: string | null | undefined): boolean;
123
+ /**
124
+ * Whether the event qualifies for the public "No fees for attendees" badge.
125
+ * External-ticket events are excluded (Bash does not control checkout).
126
+ */
127
+ export declare function guestCheckoutHasNoAddedFees(event: TicketFeeEventContext): boolean;
128
+ /**
129
+ * Full guest ticket checkout breakdown — single source for API charges and UI copy.
130
+ *
131
+ * HostAbsorbs (default): guest pays subtotal (+ optional platform guest line only).
132
+ * GuestPays/Split (enterprise): guest also pays a visible processing line (fee on subtotal, donation-style).
133
+ */
134
+ export declare function computeGuestTicketCheckoutBreakdown(args: {
135
+ discountedSubtotalCents: number;
136
+ platformFeeEnabled: boolean;
137
+ platformFeeRate: number;
138
+ feeHandling: string | null | undefined;
139
+ bashPassWaivesGuestFee: boolean;
140
+ isVerifiedNonprofitHost?: boolean;
141
+ }): GuestTicketCheckoutBreakdown;
142
+ /** All-in mandatory guest price for one USD tier (cards, detail page). */
143
+ export declare function guestAllInUnitPriceCents(unitPriceCents: number, event: TicketFeeEventContext): number;
144
+ /** Lowest all-in USD tier price for "From $X" previews. */
145
+ export declare function lowestGuestAllInPriceCents(tiers: ReadonlyArray<Pick<TicketTier, "price" | "pricingType">>, event: TicketFeeEventContext): number | null;
102
146
  /**
103
147
  * Compute the Stripe Connect `application_fee_amount` for a ticket-style charge,
104
148
  * along with its constituent parts.
@@ -134,6 +178,8 @@ export declare function computeTicketApplicationFeeAmountCents(args: {
134
178
  applicationFeeAmountCents: number;
135
179
  /** Guest-visible portion of the platform line. Zero when `isVerifiedNonprofitHost` is true. */
136
180
  guestPlatformLineCents: number;
181
+ /** Guest-visible Stripe processing line (0 when host absorbs). */
182
+ guestProcessingLineCents: number;
137
183
  };
138
184
  export declare function userHasActiveBashPass(user: {
139
185
  bashPassStripeSubscriptionId: string | null | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"paymentUtils.d.ts","sourceRoot":"","sources":["../../src/utils/paymentUtils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"paymentUtils.d.ts","sourceRoot":"","sources":["../../src/utils/paymentUtils.ts"],"names":[],"mappings":"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"}
@@ -234,26 +234,32 @@ export function splitBashPlatformFeeForTicketCheckout(args) {
234
234
  }
235
235
  return { totalPlatformCents: total, guestPlatformLineCents: guestLine };
236
236
  }
237
+ /** True when the host absorbs Stripe processing (`feeHandling` default). */
238
+ export function hostAbsorbsTicketProcessing(feeHandling) {
239
+ return (feeHandling ?? "HostAbsorbs") === "HostAbsorbs";
240
+ }
237
241
  /**
238
- * Compute the Stripe Connect `application_fee_amount` for a ticket-style charge,
239
- * along with its constituent parts.
240
- *
241
- * `isVerifiedNonprofitHost` waives ONLY Bash's platform take
242
- * (`bashPlatformTotalCents`) — Stripe's pass-through (2.9% + $0.30) is untouched
243
- * because that's not ours to waive. The host applies for Stripe nonprofit
244
- * pricing directly. When `true`:
245
- * - `bashPlatformTotalCents` and `guestPlatformLineCents` are both zero
246
- * - `totalChargedCents` collapses to the discounted subtotal (no guest-line fee added)
247
- * - `applicationFeeAmountCents` equals `stripeProcessingCents`
242
+ * Whether the event qualifies for the public "No fees for attendees" badge.
243
+ * External-ticket events are excluded (Bash does not control checkout).
244
+ */
245
+ export function guestCheckoutHasNoAddedFees(event) {
246
+ if (event.externalTicketUrl)
247
+ return false;
248
+ return hostAbsorbsTicketProcessing(event.feeHandling);
249
+ }
250
+ /**
251
+ * Full guest ticket checkout breakdown — single source for API charges and UI copy.
248
252
  *
249
- * Default (`false`) preserves existing math bit-exact for every current caller.
253
+ * HostAbsorbs (default): guest pays subtotal (+ optional platform guest line only).
254
+ * GuestPays/Split (enterprise): guest also pays a visible processing line (fee on subtotal, donation-style).
250
255
  */
251
- export function computeTicketApplicationFeeAmountCents(args) {
256
+ export function computeGuestTicketCheckoutBreakdown(args) {
257
+ const ticketSubtotalCents = args.discountedSubtotalCents;
252
258
  const isVerifiedNonprofitHost = args.isVerifiedNonprofitHost === true;
253
259
  const split = isVerifiedNonprofitHost
254
260
  ? { totalPlatformCents: 0, guestPlatformLineCents: 0 }
255
261
  : splitBashPlatformFeeForTicketCheckout({
256
- grossCents: args.discountedSubtotalCents,
262
+ grossCents: ticketSubtotalCents,
257
263
  platformFeeEnabled: args.platformFeeEnabled,
258
264
  platformFeeRate: args.platformFeeRate,
259
265
  feeHandling: args.feeHandling,
@@ -261,15 +267,69 @@ export function computeTicketApplicationFeeAmountCents(args) {
261
267
  });
262
268
  const guestPlatformLineCents = split.guestPlatformLineCents;
263
269
  const bashPlatformTotalCents = split.totalPlatformCents;
264
- const totalChargedCents = args.discountedSubtotalCents + guestPlatformLineCents;
265
- const stripeProcessingCents = calculateStripeProcessingFeeCents(totalChargedCents);
270
+ const guestProcessingLineCents = hostAbsorbsTicketProcessing(args.feeHandling)
271
+ ? 0
272
+ : calculateStripeProcessingFeeCents(ticketSubtotalCents);
273
+ const totalDueCents = ticketSubtotalCents + guestProcessingLineCents + guestPlatformLineCents;
274
+ const stripeProcessingCents = calculateStripeProcessingFeeCents(totalDueCents);
266
275
  const applicationFeeAmountCents = stripeProcessingCents + bashPlatformTotalCents;
267
276
  return {
268
- totalChargedCents,
277
+ ticketSubtotalCents,
278
+ guestProcessingLineCents,
279
+ guestPlatformLineCents,
280
+ totalDueCents,
269
281
  stripeProcessingCents,
270
282
  bashPlatformTotalCents,
271
283
  applicationFeeAmountCents,
272
- guestPlatformLineCents,
284
+ };
285
+ }
286
+ /** All-in mandatory guest price for one USD tier (cards, detail page). */
287
+ export function guestAllInUnitPriceCents(unitPriceCents, event) {
288
+ if (unitPriceCents <= 0)
289
+ return 0;
290
+ return computeGuestTicketCheckoutBreakdown({
291
+ discountedSubtotalCents: unitPriceCents,
292
+ platformFeeEnabled: event.platformFeeEnabled ?? false,
293
+ platformFeeRate: event.platformFeeRate ?? 0.03,
294
+ feeHandling: event.feeHandling,
295
+ bashPassWaivesGuestFee: false,
296
+ }).totalDueCents;
297
+ }
298
+ /** Lowest all-in USD tier price for "From $X" previews. */
299
+ export function lowestGuestAllInPriceCents(tiers, event) {
300
+ let min = null;
301
+ for (const tier of tiers) {
302
+ if (tier.pricingType === "BASHPOINTS" || tier.price <= 0)
303
+ continue;
304
+ const allIn = guestAllInUnitPriceCents(tier.price, event);
305
+ if (min === null || allIn < min)
306
+ min = allIn;
307
+ }
308
+ return min;
309
+ }
310
+ /**
311
+ * Compute the Stripe Connect `application_fee_amount` for a ticket-style charge,
312
+ * along with its constituent parts.
313
+ *
314
+ * `isVerifiedNonprofitHost` waives ONLY Bash's platform take
315
+ * (`bashPlatformTotalCents`) — Stripe's pass-through (2.9% + $0.30) is untouched
316
+ * because that's not ours to waive. The host applies for Stripe nonprofit
317
+ * pricing directly. When `true`:
318
+ * - `bashPlatformTotalCents` and `guestPlatformLineCents` are both zero
319
+ * - `totalChargedCents` collapses to the discounted subtotal (no guest-line fee added)
320
+ * - `applicationFeeAmountCents` equals `stripeProcessingCents`
321
+ *
322
+ * Default (`false`) preserves existing math bit-exact for every current caller.
323
+ */
324
+ export function computeTicketApplicationFeeAmountCents(args) {
325
+ const breakdown = computeGuestTicketCheckoutBreakdown(args);
326
+ return {
327
+ totalChargedCents: breakdown.totalDueCents,
328
+ stripeProcessingCents: breakdown.stripeProcessingCents,
329
+ bashPlatformTotalCents: breakdown.bashPlatformTotalCents,
330
+ applicationFeeAmountCents: breakdown.applicationFeeAmountCents,
331
+ guestPlatformLineCents: breakdown.guestPlatformLineCents,
332
+ guestProcessingLineCents: breakdown.guestProcessingLineCents,
273
333
  };
274
334
  }
275
335
  export function userHasActiveBashPass(user) {
@@ -1 +1 @@
1
- {"version":3,"file":"paymentUtils.js","sourceRoot":"","sources":["../../src/utils/paymentUtils.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,cAAc,EAEd,gBAAgB,IAAI,sBAAsB,GAC3C,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,eAAe,EACf,yBAAyB,EACzB,oBAAoB,EACpB,oBAAoB,EACpB,qBAAqB,GACtB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,oBAAoB,EACpB,mBAAmB,EAEnB,6BAA6B,GAC9B,MAAM,mBAAmB,CAAC;AAE3B;;;;GAIG;AACH,MAAM,UAAU,8BAA8B,CAC5C,cAAsB,EACtB,SAAyC;IAEzC,IAAI,SAAS,EAAE,CAAC;QACd,IAAI,SAAS,CAAC,qBAAqB,EAAE,CAAC;YACpC,MAAM,iBAAiB,GAAG,qBAAqB,CAC7C,SAAS,CAAC,qBAAqB,CAChC,CAAC;YACF,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,iBAAiB,CAAC,CAAC,CAAC,0CAA0C;QACnF,CAAC;QACD,IAAI,SAAS,CAAC,wBAAwB,EAAE,CAAC;YACvC,MAAM,iBAAiB,GACrB,cAAc,GAAG,CAAC,SAAS,CAAC,wBAAwB,GAAG,GAAG,CAAC,CAAC;YAC9D,OAAO,IAAI,CAAC,GAAG,CAAC,cAAc,EAAE,iBAAiB,CAAC,CAAC,CAAC,0CAA0C;QAChG,CAAC;IACH,CAAC;IACD,OAAO,CAAC,CAAC;AACX,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,6BAA6B,CAC3C,IAAgB,EAChB,GAA2B;IAE3B,IAAI,IAAI,CAAC,cAAc,KAAK,IAAI,IAAI,GAAG,CAAC,cAAc,IAAI,IAAI,EAAE,CAAC;QAC/D,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,GAAG,CAAC,cAAc,CAAC,CAAC;IAClD,CAAC;IACD,OAAO,IAAI,CAAC,KAAK,CAAC;AACpB,CAAC;AAED,MAAM,UAAU,+BAA+B,CAC7C,WAAyB,EACzB,UAAiD;IAEjD,KAAK,MAAM,IAAI,IAAI,WAAW,EAAE,CAAC;QAC/B,IAAI,IAAI,CAAC,cAAc,KAAK,IAAI;YAAE,SAAS;QAC3C,MAAM,IAAI,GAAG,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACrC,IAAI,CAAC,IAAI,EAAE,MAAM;YAAE,SAAS;QAC5B,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;YACvB,IAAI,CAAC,GAAG,CAAC,eAAe,IAAI,CAAC,CAAC,IAAI,CAAC;gBAAE,SAAS;YAC9C,IAAI,GAAG,CAAC,cAAc,IAAI,IAAI,EAAE,CAAC;gBAC/B,OAAO;oBACL,EAAE,EAAE,KAAK;oBACT,OAAO,EAAE,uBAAuB,IAAI,CAAC,KAAK,cAAc,qBAAqB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI;iBACzG,CAAC;YACJ,CAAC;YACD,IAAI,GAAG,CAAC,cAAc,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC;gBACpC,OAAO;oBACL,EAAE,EAAE,KAAK;oBACT,OAAO,EAAE,GAAG,IAAI,CAAC,KAAK,uBAAuB,qBAAqB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,cAAc;iBACxG,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC;IACD,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC;AACtB,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,6BAA6B,CAC3C,WAAyB,EACzB,UAAiD;IAEjD,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,WAAW,CAAC,OAAO,CAAC,CAAC,IAAgB,EAAE,EAAE;QACvC,qEAAqE;QACrE,IAAI,IAAI,CAAC,WAAW,KAAK,YAAY,EAAE,CAAC;YACtC,MAAM,oBAAoB,GAAG,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACrD,oBAAoB,EAAE,OAAO,CAAC,CAAC,UAAkC,EAAE,EAAE;gBACnE,MAAM,SAAS,GAAG,6BAA6B,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;gBAClE,KAAK,IAAI,SAAS,GAAG,CAAC,UAAU,CAAC,eAAe,IAAI,CAAC,CAAC,CAAC;YACzD,CAAC,CAAC,CAAC;QACL,CAAC;IACH,CAAC,CAAC,CAAC;IACH,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,wBAAwB,CACtC,WAAyB,EACzB,UAAiD;IAEjD,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,WAAW,CAAC,OAAO,CAAC,CAAC,IAAgB,EAAE,EAAE;QACvC,mCAAmC;QACnC,IAAI,IAAI,CAAC,WAAW,KAAK,YAAY,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;YAC9D,MAAM,oBAAoB,GAAG,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACrD,oBAAoB,EAAE,OAAO,CAAC,CAAC,UAAkC,EAAE,EAAE;gBACnE,KAAK,IAAI,IAAI,CAAC,eAAgB,GAAG,CAAC,UAAU,CAAC,eAAe,IAAI,CAAC,CAAC,CAAC;YACrE,CAAC,CAAC,CAAC;QACL,CAAC;IACH,CAAC,CAAC,CAAC;IACH,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAM,UAAU,qBAAqB,CACnC,KAAgC;IAEhC,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,CAAC,CAAC;IACX,CAAC;IACD,OAAO,KAAK,GAAG,6BAA6B,CAAC;AAC/C,CAAC;AACD,MAAM,UAAU,qBAAqB,CACnC,KAAgC;IAEhC,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,CAAC,CAAC;IACX,CAAC;IACD,OAAO,KAAK,GAAG,6BAA6B,CAAC;AAC/C,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,kBAAkB,CAAC,aAAqB;IACtD,IAAI,aAAa,IAAI,CAAC;QAAE,OAAO,CAAC,CAAC;IACjC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,GAAG,6BAA6B,CAAC,CAAC;IACxE,OAAO,qBAAqB,CAAC,iCAAiC,CAAC,KAAK,CAAC,CAAC,CAAC;AACzE,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,iCAAiC,CAAC,WAAmB;IACnE,IAAI,WAAW,IAAI,CAAC;QAAE,OAAO,CAAC,CAAC;IAC/B,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,GAAG,qBAAqB,CAAC;IACtD,OAAO,IAAI,CAAC,KAAK,CAAC,WAAW,GAAG,OAAO,CAAC,GAAG,UAAU,CAAC;AACxD,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,mBAAmB,CAAC,KAAa;IAC/C,OAAO,UAAU,CAAC,CAAC,KAAK,GAAG,eAAe,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;AACxE,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,0BAA0B,CAAC,WAAmB;IAC5D,OAAO,iCAAiC,CAAC,WAAW,CAAC,CAAC;AACxD,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,yCAAyC,CACvD,KAAa,EACb,cAAsC;IAEtC,kDAAkD;IAClD,MAAM,IAAI,GAAG,cAAc,IAAI,OAAO,CAAC;IAEvC,+BAA+B;IAC/B,MAAM,MAAM,GAAG,eAAe,CAAC,IAAI,CAAC,CAAC;IAErC,oDAAoD;IACpD,IAAI,aAAa,GAAG,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC;IAE3C,oBAAoB;IACpB,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,MAAM,CAAC,YAAY,CAAC,CAAC;IAE7D,oCAAoC;IACpC,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;IAEzD,8CAA8C;IAC9C,OAAO,UAAU,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;AAC9C,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,yCAAyC,CACvD,KAAa,EACb,cAAsC;IAEtC,kDAAkD;IAClD,MAAM,IAAI,GAAG,cAAc,IAAI,OAAO,CAAC;IAEvC,+BAA+B;IAC/B,MAAM,MAAM,GAAG,oBAAoB,CAAC,IAAI,CAAC,CAAC;IAE1C,iDAAiD;IACjD,IAAI,aAAa,GAAG,CAAC,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,MAAM,CAAC,UAAU,CAAC;IAEjE,oCAAoC;IACpC,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;IAEzD,8CAA8C;IAC9C,OAAO,UAAU,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;AAC9C,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,yCAAyC,CACvD,KAAa,EACb,cAAsC;IAEtC,kDAAkD;IAClD,MAAM,IAAI,GAAG,cAAc,IAAI,OAAO,CAAC;IAEvC,+BAA+B;IAC/B,MAAM,MAAM,GAAG,oBAAoB,CAAC,IAAI,CAAC,CAAC;IAE1C,oDAAoD;IACpD,IAAI,aAAa,GAAG,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC;IAE3C,oCAAoC;IACpC,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;IAEzD,8CAA8C;IAC9C,OAAO,UAAU,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;AAC9C,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,6BAA6B,CAAC,UAAkB,EAAE,IAAY;IAC5E,IAAI,UAAU,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC;QAAE,OAAO,CAAC,CAAC;IAC3C,OAAO,IAAI,CAAC,KAAK,CAAC,UAAU,GAAG,IAAI,CAAC,CAAC;AACvC,CAAC;AAQD;;;GAGG;AACH,MAAM,UAAU,qCAAqC,CAAC,IAMrD;IACC,MAAM,EAAE,UAAU,EAAE,kBAAkB,EAAE,eAAe,EAAE,WAAW,EAAE,sBAAsB,EAAE,GAAG,IAAI,CAAC;IACtG,MAAM,KAAK,GAAG,kBAAkB;QAC9B,CAAC,CAAC,6BAA6B,CAAC,UAAU,EAAE,eAAe,CAAC;QAC5D,CAAC,CAAC,CAAC,CAAC;IACN,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC;QACf,OAAO,EAAE,kBAAkB,EAAE,CAAC,EAAE,sBAAsB,EAAE,CAAC,EAAE,CAAC;IAC9D,CAAC;IACD,MAAM,IAAI,GAAG,WAAW,IAAI,aAAa,CAAC;IAC1C,IAAI,SAAS,GAAG,CAAC,CAAC;IAClB,IAAI,IAAI,KAAK,WAAW,EAAE,CAAC;QACzB,SAAS,GAAG,KAAK,CAAC;IACpB,CAAC;SAAM,IAAI,IAAI,KAAK,OAAO,EAAE,CAAC;QAC5B,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;IACpC,CAAC;IACD,IAAI,sBAAsB,IAAI,SAAS,GAAG,CAAC,EAAE,CAAC;QAC5C,SAAS,GAAG,CAAC,CAAC;IAChB,CAAC;IACD,OAAO,EAAE,kBAAkB,EAAE,KAAK,EAAE,sBAAsB,EAAE,SAAS,EAAE,CAAC;AAC1E,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,sCAAsC,CAAC,IAYtD;IAUC,MAAM,uBAAuB,GAAG,IAAI,CAAC,uBAAuB,KAAK,IAAI,CAAC;IACtE,MAAM,KAAK,GAAG,uBAAuB;QACnC,CAAC,CAAC,EAAE,kBAAkB,EAAE,CAAC,EAAE,sBAAsB,EAAE,CAAC,EAAE;QACtD,CAAC,CAAC,qCAAqC,CAAC;YACpC,UAAU,EAAE,IAAI,CAAC,uBAAuB;YACxC,kBAAkB,EAAE,IAAI,CAAC,kBAAkB;YAC3C,eAAe,EAAE,IAAI,CAAC,eAAe;YACrC,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,sBAAsB,EAAE,IAAI,CAAC,sBAAsB;SACpD,CAAC,CAAC;IACP,MAAM,sBAAsB,GAAG,KAAK,CAAC,sBAAsB,CAAC;IAC5D,MAAM,sBAAsB,GAAG,KAAK,CAAC,kBAAkB,CAAC;IACxD,MAAM,iBAAiB,GAAG,IAAI,CAAC,uBAAuB,GAAG,sBAAsB,CAAC;IAChF,MAAM,qBAAqB,GAAG,iCAAiC,CAAC,iBAAiB,CAAC,CAAC;IACnF,MAAM,yBAAyB,GAAG,qBAAqB,GAAG,sBAAsB,CAAC;IACjF,OAAO;QACL,iBAAiB;QACjB,qBAAqB;QACrB,sBAAsB;QACtB,yBAAyB;QACzB,sBAAsB;KACvB,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,IAGrC;IACC,IAAI,CAAC,IAAI,CAAC,4BAA4B;QAAE,OAAO,KAAK,CAAC;IACrD,IAAI,CAAC,IAAI,CAAC,wBAAwB;QAAE,OAAO,IAAI,CAAC;IAChD,OAAO,IAAI,CAAC,wBAAwB,GAAG,IAAI,IAAI,EAAE,CAAC;AACpD,CAAC;AAED,6GAA6G;AAC7G,MAAM,UAAU,kBAAkB,CAChC,CAAsB,EACtB,CAAsB;IAEtB,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC;QAAE,OAAO,IAAI,CAAC;IAC1B,IAAI,CAAC,CAAC;QAAE,OAAO,CAAC,CAAC;IACjB,IAAI,CAAC,CAAC;QAAE,OAAO,CAAC,CAAC;IACjB,OAAO,mBAAmB,CAAC,CAAC,CAAC,IAAI,mBAAmB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAClE,CAAC;AAED,MAAM,UAAU,4BAA4B,CAAC,IAG5C;IACC,IAAI,IAAI,CAAC,cAAc,KAAK,cAAc,CAAC,KAAK;QAAE,OAAO,IAAI,CAAC;IAC9D,IAAI,IAAI,CAAC,mBAAmB,IAAI,IAAI,CAAC,mBAAmB,IAAI,IAAI,IAAI,EAAE,EAAE,CAAC;QACvE,OAAO,IAAI,CAAC;IACd,CAAC;IACD,OAAO,yBAAyB,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,IAAI,CAAC;AAChE,CAAC;AAED,0GAA0G;AAC1G,MAAM,UAAU,wBAAwB,CAAC,IAMxC;IACC,MAAM,cAAc,GAAG,4BAA4B,CAAC,IAAI,CAAC,CAAC;IAC1D,MAAM,cAAc,GAClB,qBAAqB,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC;IAC9E,OAAO,kBAAkB,CAAC,cAAc,EAAE,cAAc,CAAC,CAAC;AAC5D,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,8BAA8B,CAAC,IAO9C;IACC,MAAM,SAAS,GAAG,wBAAwB,CAAC,IAAI,CAAC,CAAC;IACjD,IAAI,CAAC,SAAS;QAAE,OAAO,CAAC,CAAC;IACzB,MAAM,GAAG,GAAG,oBAAoB,CAAC,SAAS,CAAC,CAAC;IAC5C,IAAI,GAAG,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IAC9B,MAAM,IAAI,GAAG,IAAI,CAAC,2BAA2B,IAAI,CAAC,CAAC;IACnD,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,GAAG,IAAI,CAAC,CAAC;AACjC,CAAC;AAkBD;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAwB;IAC1D,CAAC,sBAAsB,CAAC,UAAU,CAAC,EAAE;QACnC,IAAI,EAAE,iBAAiB;QACvB,WAAW,EAAE,mCAAmC;QAChD,aAAa,EAAE,oBAAoB,CAAC,KAAK,CAAC,OAAO,EAAE,iCAAiC;QACpF,UAAU,EAAE,GAAG;QACf,OAAO,EAAE,GAAG;KACb;IACD,CAAC,sBAAsB,CAAC,YAAY,CAAC,EAAE;QACrC,IAAI,EAAE,sBAAsB;QAC5B,WAAW,EAAE,+CAA+C;QAC5D,aAAa,EAAE,GAAG;QAClB,UAAU,EAAE,KAAK;QACjB,OAAO,EAAE,GAAG;KACb;CACO,CAAC"}
1
+ {"version":3,"file":"paymentUtils.js","sourceRoot":"","sources":["../../src/utils/paymentUtils.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,31 @@
1
- import { Recurrence, RecurringFrequency } from "@prisma/client";
1
+ import { Prisma, Recurrence, RecurringFrequency } from "@prisma/client";
2
2
  import { DateTime } from "luxon";
3
3
  import { DateTimeArgType } from "../definitions.js";
4
+ /**
5
+ * Per-occurrence date/time move. Keyed (in `Recurrence.occurrenceOverrides`) by the
6
+ * original generated occurrence's `LUXON_DATETIME_FORMAT_ISO_LIKE` string.
7
+ */
8
+ export interface OccurrenceOverride {
9
+ startDateTime: string;
10
+ endDateTime?: string | null;
11
+ }
12
+ export type OccurrenceOverrideMap = Record<string, OccurrenceOverride>;
13
+ /**
14
+ * Recurrence fields sent on create/update; `occurrenceOverrides` is the typed map
15
+ * (not Prisma `JsonValue`) so app/API mappers compile without casts.
16
+ */
17
+ export type RecurrenceWireInput = Omit<Partial<Recurrence>, "occurrenceOverrides"> & {
18
+ occurrenceOverrides?: OccurrenceOverrideMap | Prisma.JsonValue | null;
19
+ };
20
+ /**
21
+ * Stable key for an occurrence within a series. Both the generator and the
22
+ * skip/move persistence must derive the key the same way, so callers should use this.
23
+ */
24
+ export declare function occurrenceOverrideKey(occurrenceStart: Date | string | DateTime): string;
25
+ /** Safely coerce the `Recurrence.occurrenceOverrides` Json column into a typed map. */
26
+ export declare function parseOccurrenceOverrides(raw: unknown): OccurrenceOverrideMap;
27
+ /** True when the host has skipped or moved at least one occurrence in the series. */
28
+ export declare function recurrenceHasOccurrenceExceptions(recurrence: Recurrence | null | undefined): boolean;
4
29
  export declare function getRecurringBashEventPossibleDateTimes(startDateTime: DateTimeArgType, recurrence: Recurrence | undefined | null): Date[];
5
30
  export declare function getRecurringBashEventPossibleLuxonTimes(startDateTime: DateTimeArgType, recurrence: Recurrence | undefined | null): DateTime[];
6
31
  /**