import { DeleteDTO } from '@hed-hog/api';
import { PaginationDTO, PaginationService } from '@hed-hog/api-pagination';
import { PrismaService } from '@hed-hog/api-prisma';
import { HttpService } from '@nestjs/axios';
import { OnModuleInit } from '@nestjs/common';
import { IntegrationDeveloperApiService } from '../integration/services/integration-developer-api.service';
import { DomainEvent } from '../integration/types';
export declare class EventWebhookService implements OnModuleInit {
    private readonly prisma;
    private readonly pagination;
    private readonly http;
    private readonly integrationApi;
    private readonly logger;
    private readonly registeredEvents;
    constructor(prisma: PrismaService, pagination: PaginationService, http: HttpService, integrationApi: IntegrationDeveloperApiService);
    private get webhooks();
    private get webhookEvents();
    private get catalog();
    private get logs();
    onModuleInit(): Promise<void>;
    list(paginationParams: PaginationDTO): Promise<{
        total: any;
        lastPage: number;
        page: number;
        pageSize: number;
        prev: number;
        next: number;
        data: any[];
    }>;
    get(id: number): Promise<any>;
    create(data: any): Promise<any>;
    update(id: number, data: any): Promise<any>;
    delete(data: DeleteDTO): Promise<any>;
    listLogs(webhookId: number, paginationParams: PaginationDTO): Promise<{
        total: any;
        lastPage: number;
        page: number;
        pageSize: number;
        prev: number;
        next: number;
        data: any[];
    }>;
    handleEvent(event: DomainEvent): Promise<void>;
    registerConfiguredEvents(): Promise<void>;
    private findActiveWebhooksForEvent;
    private deliverWebhook;
    private registerEventsFromWebhook;
    private registerEvent;
    private ensureSlugAvailable;
    private normalizeWebhook;
    private normalizeEventIds;
    private nullableString;
}
//# sourceMappingURL=event-webhook.service.d.ts.map