import { FastifyReply } from "fastify"; import { AuthenticatedRequest } from "../../../common/interfaces/authenticated.request.interface"; import { StripeInvoiceStatus } from "../entities/stripe-invoice.entity"; import { StripeInvoiceAdminService } from "../services/stripe-invoice-admin.service"; export declare class StripeInvoiceController { private readonly stripeInvoiceAdminService; constructor(stripeInvoiceAdminService: StripeInvoiceAdminService); /** * List invoices for the authenticated user's company * * @param req - Authenticated request * @param reply - Fastify reply * @param query - JSON:API query parameters for pagination * @param status - Optional filter by invoice status */ listInvoices(req: AuthenticatedRequest, reply: FastifyReply, query: any, status?: StripeInvoiceStatus): Promise; /** * Get the upcoming invoice preview for the authenticated user's company * * @param req - Authenticated request * @param reply - Fastify reply * @param subscriptionId - Optional subscription ID to preview */ getUpcomingInvoice(req: AuthenticatedRequest, reply: FastifyReply, subscriptionId?: string): Promise; /** * Get a single invoice by ID * * @param req - Authenticated request * @param reply - Fastify reply * @param invoiceId - Invoice ID */ getInvoice(req: AuthenticatedRequest, reply: FastifyReply, invoiceId: string): Promise; } //# sourceMappingURL=stripe-invoice.controller.d.ts.map