import Stripe from "stripe";
import type { BillingService } from "./billing-service";
export declare class StripeBillingService implements BillingService {
    private stripe;
    constructor();
    createCustomer(args: Parameters<BillingService["createCustomer"]>[0]): Promise<{
        stripeCustomerId: string;
    }>;
    createPaymentIntent(args: Parameters<BillingService["createPaymentIntent"]>[0]): Promise<{
        id: string;
        client_secret: string | null;
    }>;
    createSubscriptionCheckout(args: Parameters<BillingService["createSubscriptionCheckout"]>[0]): Promise<{
        checkoutUrl: string | null;
        sessionId: string;
    }>;
    createPrice(args: Parameters<BillingService["createPrice"]>[0]): Promise<{
        priceId: string;
    }>;
    handleSubscriptionCreation(subscriptionId: string): Promise<void>;
    handleSubscriptionCancel(subscriptionId: string): Promise<void>;
    handleSubscriptionUpdate(args: Parameters<BillingService["handleSubscriptionUpdate"]>[0]): Promise<void>;
    checkoutSessionIsPaid(paymentId: string): Promise<boolean>;
    getSubscriptionStatus(subscriptionId: string): Promise<Stripe.Subscription.Status | null>;
}
//# sourceMappingURL=stripe-billling-service.d.ts.map