@@ -131,3 +131,157 @@ export { PricingStrategyFactory, PlanType } from './strategyFactory';
131131export { BillingEngine , BillingEngineConfig } from './billingEngine' ;
132132export { PricingAnalyticsService , RevenueMetrics } from './billingAnalytics' ;
133133
134+ // Plan Templates and Dynamic Pricing Tiers
135+ export {
136+ export { MeteringService , meteringService } from './meteringService' ;
137+ export type { UsageMetric , UsageIngestResult , UsageIngestStatus } from './meteringService' ;
138+ export { TieredPricingCalculator , buildSimpleTiers } from './tieredPricingCalculator' ;
139+ export { handleUsageIngestion } from './usageIngestionApi' ;
140+ export type { UsageEventPayload , UsageIngestResponse } from './usageIngestionApi' ;
141+ export { UsageBillingCloseCron , usageBillingCloseCron } from './usageBillingCloseCron' ;
142+ export type { UsageBillingCloseReport , UsageBillingCloseEntry , MeterAccount } from './usageBillingCloseCron' ;
143+ export { AlignmentService , alignmentService } from './alignmentService' ;
144+ export type { AlignmentConfirmation } from './alignmentService' ;
145+ export { ConsolidationEngine , consolidationEngine } from './consolidationEngine' ;
146+ export { PricingService } from './pricingService' ;
147+ export type { PriceRecommendation , ABTestScenario , PricingContext } from './pricingService' ;
148+ export { TaxService } from './taxService' ;
149+ export type {
150+ TaxType ,
151+ TaxJurisdiction ,
152+ TaxRateEntry ,
153+ TaxRateChangeEvent ,
154+ CustomerTaxStatus ,
155+ TaxRemittanceLineItem ,
156+ TaxRemittanceReport ,
157+ TaxCalculationResult ,
158+ TaxInvoiceContext ,
159+ NexusReport ,
160+ MidCycleTaxChange ,
161+ DigitalGoodsClass ,
162+ DigitalGoodsTaxRule ,
163+ TaxRemittanceReportRequest ,
164+ } from './taxTypes' ;
165+ export { DunningService , dunningService } from './dunningService' ;
166+ export type {
167+ BackoffPolicy ,
168+ FailureType ,
169+ RetryScheduleConfig ,
170+ RetryAnalytics ,
171+ } from './dunningService' ;
172+
173+ // Metered pricing and tiered overage rating (issue #935). Mirrors the
174+ // `subtrackr-metering` Soroban contract; see metering.ts for why.
175+ export {
176+ MeteringPricingError ,
177+ buildOverageLadder ,
178+ marginalUnitPrice ,
179+ quoteMeter ,
180+ rateMeter ,
181+ rateUsage ,
182+ toContractTiers ,
183+ validateMeterPricingPlan ,
184+ validateOverageTiers ,
185+ } from './metering' ;
186+ export type {
187+ MeteredPricingModel ,
188+ MeterPricingPlan ,
189+ OverageTier ,
190+ RateUsageInput ,
191+ RatedMeterLine ,
192+ RatedTierLine ,
193+ RatedUsageBill ,
194+ } from './metering' ;
195+
196+ // Per-tenant invoice branding and rendering (issue #937).
197+ export {
198+ FALLBACK_BRANDING ,
199+ InvoiceCustomizationService ,
200+ escapeHtml ,
201+ normalizeBranding ,
202+ } from './invoiceCustomizationService' ;
203+ export type { DeliveryResult , RenderedInvoice } from './invoiceCustomizationService' ;
204+ export { ProrationService , prorationService } from './proration' ;
205+ export type {
206+ ProrationConfiguration ,
207+ ProrationAnalytics ,
208+ ProrationDispute ,
209+ MidCycleChangeRequest ,
210+ } from './proration' ;
211+ export { streamExport , reconcile } from './accountingExportService' ;
212+ export type {
213+ AccountingFormat ,
214+ TransactionType ,
215+ TransactionRecord ,
216+ ExportFilter ,
217+ StreamExportOptions ,
218+ ReconciliationResult ,
219+ } from './accountingExportService' ;
220+ export {
221+ BackendPartnerService ,
222+ } from './partnerService' ;
223+ export type { SplitConfiguration , PartnerPayoutSchedule } from '../../../src/types/partner' ;
224+
225+ // Credit system — see creditService.ts for architectural notes.
226+ export { CreditService , creditService , creditReportToCsv } from './creditService' ;
227+ export type {
228+ AccountCreditSummary ,
229+ ApplyCreditInput ,
230+ ApplyCreditResult ,
231+ CreditAccount ,
232+ CreditAuditPage ,
233+ CreditAuditQuery ,
234+ CreditBucketBreakdown ,
235+ CreditEntry ,
236+ CreditEntryKind ,
237+ CreditExpiryForecast ,
238+ CreditLot ,
239+ CreditReport ,
240+ CreditUsageTrendPoint ,
241+ ExpirationPolicy ,
242+ IssueCreditInput ,
243+ PrepaymentTransaction ,
244+ PrepaymentWallet ,
245+ TopAccount ,
246+ TransferCreditInput ,
247+ } from './creditTypes' ;
248+ export type {
249+ IMeteringService ,
250+ IPricingService ,
251+ ITaxService ,
252+ IDunningService ,
253+ IAccountingExportService ,
254+ IPartnerService ,
255+ ICreditService ,
256+ } from './interfaces' ;
257+ export { BillingError , BillingErrorCode } from './errors' ;
258+
259+ // Strategy Pattern Pricing exports (Issue #741)
260+ export { PricingStrategy , PricingContext as PricingStrategyContext , PricingResult , PricingAnalytics } from './pricingStrategy' ;
261+ export { FlatRateStrategy } from './flatRateStrategy' ;
262+ export { UsageBasedStrategy } from './usageBasedStrategy' ;
263+ export { TieredPricingStrategy } from './tieredStrategy' ;
264+ export { DynamicPricingStrategy } from './dynamicStrategy' ;
265+ export { PricingStrategyFactory , PlanType } from './strategyFactory' ;
266+ export { BillingEngine , BillingEngineConfig } from './billingEngine' ;
267+ export { PricingAnalyticsService , RevenueMetrics } from './billingAnalytics' ;
268+
269+ // Plan Templates and Dynamic Pricing Tiers
270+ export {
271+ PlanTemplateService ,
272+ validateTiers ,
273+ validateTemplateDraft ,
274+ quoteTemplate ,
275+ resolvePlan
276+ } from './planTemplateService' ;
277+ export type {
278+ PricingTier ,
279+ PlanTemplate ,
280+ TemplateOverrides ,
281+ ResolvedPlan ,
282+ TemplateAnalytics
283+ } from './planTemplateService' ;
284+
285+ // Trial Management
286+ export { TrialManagementService } from './trialService' ;
287+ export type { TrialAnalytics , WebhookPayload } from './trialService' ;
0 commit comments