import type { Webhook } from '../../../prisma/client';
import type { UserPermissionRole } from '../../../prisma/enums';
type WebhookGroup = {
    teamId?: number | null;
    profile: {
        slug: string | null;
        name: string | null;
        image?: string;
    };
    metadata?: {
        readOnly: boolean;
    };
    webhooks: Webhook[];
};
export declare class WebhookRepository {
    static getAllWebhooksByUserId({ userId, organizationId, userRole, }: {
        userId: number;
        organizationId?: number | null;
        userRole?: UserPermissionRole;
    }): Promise<{
        webhookGroups: WebhookGroup[];
        profiles: {
            readOnly?: boolean | undefined;
            slug: string | null;
            name: string | null;
            image?: string;
            teamId: number | null | undefined;
        }[];
    }>;
    static findByWebhookId(webhookId?: string): Promise<{
        time: number | null;
        id: string;
        userId: number | null;
        teamId: number | null;
        secret: string | null;
        active: boolean;
        platform: boolean;
        subscriberUrl: string;
        payloadTemplate: string | null;
        eventTriggers: import('../../../prisma-client').$Enums.WebhookTriggerEvents[];
        timeUnit: import('../../../prisma-client').$Enums.TimeUnit | null;
    }>;
}
export {};
//# sourceMappingURL=webhook.d.ts.map