import { Server } from 'http';
import { Logger } from '../logging/Logger';
export interface GracefulShutdownConfig {
    enabled?: boolean;
    timeout?: number;
    signals?: string[];
}
export declare class GracefulShutdown {
    private server?;
    private logger;
    private config;
    private shutdownHandlers;
    private isShuttingDown;
    constructor(config?: GracefulShutdownConfig, logger?: Logger);
    /**
     * Set the HTTP server instance
     */
    setServer(server: Server): void;
    /**
     * Add a shutdown handler
     */
    addHandler(handler: () => Promise<void>): void;
    /**
     * Setup signal handlers for graceful shutdown
     */
    private setupSignalHandlers;
    /**
     * Perform graceful shutdown
     */
    private shutdown;
    /**
     * Force shutdown (for testing or emergency situations)
     */
    forceShutdown(exitCode?: number): void;
}
//# sourceMappingURL=GracefulShutdown.d.ts.map