@iota-big3/sdk-production
Version:
Production readiness tools and utilities for SDK
38 lines • 1.68 kB
TypeScript
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