import { Provider } from "@prisma/client";
import { InvoiceService } from "../billing/invoice.service";
import { PrismaService } from "../prisma/prisma.service";
import { ProviderRouterService } from "../providers/provider-router.service";
import { WebhookEventService } from "../webhook-events/webhook-event.service";
export declare class WebhookInboundService {
    private readonly prisma;
    private readonly router;
    private readonly webhookEvents;
    private readonly invoices;
    private readonly logger;
    constructor(prisma: PrismaService, router: ProviderRouterService, webhookEvents: WebhookEventService, invoices: InvoiceService);
    receive(provider: Provider, providerConfigId: string, rawBody: string, headers: Record<string, string>): Promise<{
        received: true;
        eventId: string;
        deduped?: boolean;
    }>;
    private applyStatusChange;
    private mapAttemptStatus;
    private mapIntentStatus;
    private eventTypeFor;
    private extractSignature;
    private safeJson;
}
