import { type IncomingMessage, type ServerResponse } from 'http';
import type { Config } from '../config/schema.js';
export interface PREvent {
    action: string;
    number: number;
    pull_request: {
        title: string;
        body: string;
        head: {
            ref: string;
            sha: string;
            repo: {
                full_name: string;
            } | null;
        };
        base: {
            ref: string;
            repo: {
                full_name: string;
            };
        };
        html_url: string;
        user: {
            login: string;
        };
    };
    repository: {
        name: string;
        owner: {
            login: string;
        };
        clone_url: string;
    };
}
export interface WebhookFileLogEntry {
    level: 'info' | 'warn' | 'error';
    event: string;
    [key: string]: unknown;
}
export declare function createWebhookServer(config: Config, webhookSecret: string, onPR: (event: PREvent) => void, onLog: (msg: string) => void, onFileLog?: (entry: WebhookFileLogEntry) => void): import("http").Server<typeof IncomingMessage, typeof ServerResponse>;
//# sourceMappingURL=webhook.d.ts.map