import { EventEmitter } from 'events';
import { ApiDocConfig, DeploymentChecklistItem, HealthCheckConfig, HealthCheckResult, HealthStatus, PlaygroundConfig, ProductionResult, ReleaseConfig, ReleaseInfo } from './types';
export declare class ProductionManager extends EventEmitter {
    private healthChecker;
    private _isEnabled;
    private checkInterval?;
    private apiDocConfig?;
    private playgroundConfig?;
    constructor();
    private initialize;
    private registerDefaultHealthChecks;
    configureHealthChecks(config: HealthCheckConfig): void;
    registerHealthCheck(name: string, check: () => Promise<HealthStatus>): void;
    runHealthCheck(name?: string): Promise<ProductionResult<HealthCheckResult | Map<string, HealthCheckResult>>>;
    private startHealthMonitoring;
    configureApiDocs(config: ApiDocConfig): void;
    generateApiDocs(): Promise<ProductionResult<string>>;
    configurePlayground(config: PlaygroundConfig): void;
    startPlayground(): Promise<ProductionResult<{
        url: string;
    }>>;
    configureRelease(_config: ReleaseConfig): void;
    createRelease(version: string, notes?: string): Promise<ProductionResult<ReleaseInfo>>;
    private generateChangelog;
    generateDeploymentChecklist(): DeploymentChecklistItem[];
    validateProductionConfig(config: Record<string, unknown>): ProductionResult<{
        valid: boolean;
        errors: string[];
    }>;
    enable(): void;
    disable(): void;
    get isEnabled(): boolean;
    destroy(): void;
    private emitProductionEvent;
    private log;
}
export declare function createProductionManager(): ProductionManager;
//# sourceMappingURL=production-manager.d.ts.map