import type { Result } from "@fjall/generator"; import { CdkError } from "../../types/errors/CdkError.js"; import { type DiffDetails } from "./CdkOutputParser.js"; import type { ICdkProcessManager } from "./ICdkProcessManager.js"; import { type BootstrapRunFailure } from "./bootstrapConvergence.js"; import type { CdkOptions, CdkOutput } from "./CdkService.js"; /** Synth is CPU-bound template generation — 5 minutes is generous */ export declare const SYNTH_TIMEOUT_MS = 300000; /** Bootstrap creates a single stack with a handful of resources */ export declare const BOOTSTRAP_TIMEOUT_MS = 180000; /** Import maps existing resources into CDK state — slower than deploy due to resource lookup */ export declare const IMPORT_TIMEOUT_MS = 1200000; export interface CheckDifferencesResult { hasDifferences: boolean; output?: string; details?: DiffDetails; } /** * Runs low-level CDK CLI commands (synth, deploy, destroy, diff, bootstrap, import). * Delegates process management to CdkProcessManager (or any ICdkProcessManager). */ export declare class CdkCommandRunner { private processManager; private readonly argumentBuilder; constructor(processManager: ICdkProcessManager); dispose(): void; checkDifferences(path: string, stackName?: string, options?: CdkOptions): Promise>; deploy(path: string, stackName?: string, options?: CdkOptions): Promise>; destroy(path: string, stackName?: string, options?: CdkOptions): Promise>; /** * Import existing AWS resources into CDK stack * * NOTE: This method is fully functional but currently unreachable as import * functionality is temporarily disabled at the AST layer (astCodeModification.ts). * When import is re-enabled, this method will work without changes. */ runImport(path: string, resourceMappingFile?: string, options?: CdkOptions): Promise>; synth(path: string, options?: CdkOptions): Promise>; bootstrap(accountId: string, region: string, options?: CdkOptions): Promise>; }