export type InfraProviderType = 'jenkins' | 'okd' | 'terraform'; export interface HealthStatus { status: 'healthy' | 'degraded' | 'down'; latency: number; details: Record; lastChecked: string; } export interface InfraStatus { providers: Record; lastDiscovery: string; } export interface JenkinsConfig { url: string; username?: string; apiToken?: string; credentialsId?: string; folder?: string; } export interface OKDConfig { server: string; project: string; imageRegistry?: string; token?: string; route?: { tls: boolean; hostname: string; }; } export interface TerraformConfig { backend: string; bucket?: string; key?: string; region?: string; workDir?: string; } export interface InfraConfig { jenkins?: JenkinsConfig; okd?: OKDConfig; terraform?: TerraformConfig; deploy: { autoApprove: boolean; confirmationPrompt: boolean; notifyOnSuccess: boolean; }; } export interface DeployResult { provider: string; success: boolean; url?: string; artifacts: string[]; logs: string[]; nextSteps: string[]; tokenEstimate: number; } export interface PipelineConfig { name: string; branch: string; dockerImage?: string; registry?: string; namespace?: string; buildArgs?: Record; envVars?: Record; triggers?: string[]; } export interface OKDManifests { deploymentConfig: string; buildConfig: string; imageStream: string; route: string; service: string; } export type FindingSeverity = 'CRITICAL' | 'HIGH' | 'MEDIUM' | 'LOW'; export type FindingCategory = 'security' | 'reliability' | 'cost' | 'performance' | 'compliance'; export interface InfraFinding { ruleId: string; severity: FindingSeverity; category: FindingCategory; resource: string; message: string; suggestion: string; autoFixAvailable: boolean; } export interface InfraAnalysisResult { findings: InfraFinding[]; score: number; provider: string; summary: string; } export interface DriftResult { resource: string; type: 'config' | 'state' | 'permission'; expected: string; actual: string; severity: FindingSeverity; } export interface MonolithAnalysis { modules: ModuleInfo[]; couplingScore: number; suggestedSplits: SuggestedSplit[]; migrationPlan: MigrationStep[]; } export interface ModuleInfo { name: string; files: number; dependencies: string[]; entryPoints: string[]; complexity: number; } export interface SuggestedSplit { name: string; includes: string[]; rationale: string; estimatedEffort: 'low' | 'medium' | 'high'; } export interface MigrationStep { order: number; action: string; detail: string; risk: FindingSeverity; } export interface InfraCLIOptions { provider?: string; project?: string; dryRun?: boolean; verbose?: boolean; json?: boolean; } //# sourceMappingURL=types.d.ts.map