import { ConfigService } from '@nestjs/config'; import Stripe from 'stripe'; export declare class StripeService { private configService; private readonly logger; private stripe; constructor(configService: ConfigService); private ensureStripe; createCustomer(params: { email?: string; phone: string; name: string; tenantId: string; }): Promise; getCustomer(customerId: string): Promise; createSubscription(params: { customerId: string; priceId: string; trialDays?: number; }): Promise; cancelSubscription(subscriptionId: string): Promise; getSubscription(subscriptionId: string): Promise; updateSubscription(subscriptionId: string, params: Stripe.SubscriptionUpdateParams): Promise; createPaymentIntent(params: { amount: number; customerId: string; metadata?: Record; }): Promise; createCheckoutSession(params: { customerId: string; priceId: string; mode: 'subscription' | 'payment'; successUrl: string; cancelUrl: string; metadata?: Record; }): Promise; createPortalSession(params: { customerId: string; returnUrl: string; }): Promise; constructWebhookEvent(payload: string | Buffer, signature: string, webhookSecret: string): Stripe.Event; createProduct(params: { name: string; description?: string; metadata?: Record; }): Promise; createPrice(params: { productId: string; unitAmount: number; recurring?: { interval: 'month' | 'year'; }; metadata?: Record; }): Promise; listInvoices(customerId: string, limit?: number): Promise; }