export declare enum WebhookEventType {
    SNAPSHOT_SUBMITTED = "form.snapshot.submitted",
    SNAPSHOT_APPROVED = "form.snapshot.approved",
    SNAPSHOT_REJECTED = "form.snapshot.rejected",
    SNAPSHOT_PUBLISHED = "form.snapshot.published",
    INSTANCE_CREATED = "form.instance.created",
    INSTANCE_SUBMITTED = "form.instance.submitted",
    INSTANCE_APPROVED = "form.instance.approved",
    INSTANCE_REJECTED = "form.instance.rejected",
    INSTANCE_WITHDRAWN = "form.instance.withdrawn",
    DEFINITION_CREATED = "form.definition.created",
    DEFINITION_UPDATED = "form.definition.updated",
    DEFINITION_ARCHIVED = "form.definition.archived"
}
export declare class CreateWebhookDto {
    name: string;
    description?: string;
    url: string;
    events: string[];
    headers?: Record<string, string>;
    maxRetries?: number;
    timeoutMs?: number;
}
export declare class UpdateWebhookDto {
    name?: string;
    description?: string;
    url?: string;
    events?: string[];
    enabled?: boolean;
    headers?: Record<string, string>;
    maxRetries?: number;
    timeoutMs?: number;
}
export declare class TestWebhookDto {
    eventType?: string;
    testPayload?: Record<string, any>;
}
export declare class WebhookResponse {
    id: string;
    organizationId?: string;
    name: string;
    description?: string;
    url: string;
    events: string[];
    enabled: boolean;
    maxRetries: number;
    timeoutMs: number;
    headers?: Record<string, string>;
    createdAt: string;
    updatedAt: string;
}
export declare class WebhookLogResponse {
    id: string;
    webhookId: string;
    eventType: string;
    payload: any;
    statusCode?: number;
    response?: string;
    success: boolean;
    error?: string;
    retryCount: number;
    duration?: number;
    createdAt: string;
}
export declare class QueryWebhookLogsDto {
    page?: number;
    limit?: number;
    eventType?: string;
    success?: boolean;
}
