export interface CdkDiffStack { readonly stackName: string; readonly changesetRoleToAssumeArn: string; readonly changesetRoleToAssumeRegion: string; readonly oidcRoleArn?: string; readonly oidcRegion?: string; } export interface CdkDiffStackWorkflowProps { readonly project: any; readonly stacks: CdkDiffStack[]; readonly oidcRoleArn?: string; readonly oidcRegion?: string; readonly nodeVersion?: string; readonly cdkYarnCommand?: string; readonly scriptOutputPath?: string; /** * Working directory for the CDK app, relative to the repository root. * Useful for monorepos where infrastructure lives in a subdirectory (e.g., 'infra'). * * When set, all workflow run steps will use `defaults.run.working-directory` * and script paths will be adjusted to use absolute references. * * @default - repository root */ readonly workingDirectory?: string; /** * Additional GitHub Actions steps to run before CDK operations (after install, before AWS creds). * Accepts a static array of steps, or a factory function receiving context: * `(ctx: { stack: string; workingDirectory?: string }) => GitHubStep[]` * * When `workingDirectory` is set, all `run:` steps inherit that directory. * To run a step at the repository root, add `working-directory: '.'` to that step. */ readonly preGitHubSteps?: any; /** * Additional GitHub Actions steps to run after all CDK operations complete. * Accepts a static array of steps, or a factory function receiving context: * `(ctx: { stack: string; workingDirectory?: string }) => GitHubStep[]` * * When `workingDirectory` is set, all `run:` steps inherit that directory. * To run a step at the repository root, add `working-directory: '.'` to that step. */ readonly postGitHubSteps?: any; } export declare class CdkDiffStackWorkflow { private static scriptCreated; constructor(props: CdkDiffStackWorkflowProps); private validateOidcConfiguration; private createWorkflowForStack; } export declare function sanitizeForFileName(name: string): string; export declare const MAX_CF_IDENTIFIER_LENGTH = 128; export declare function sanitizeForCloudFormation(name: string): string;