import type { DescribeChangeSetCommandOutput } from '@aws-sdk/client-cloudformation';
export type DeployStackResult = SuccessfulDeployStackResult | NeedRollbackFirstDeployStackResult | ReplacementRequiresRollbackStackResult;
/** Successfully deployed a stack */
export interface SuccessfulDeployStackResult {
    readonly type: 'did-deploy-stack';
    readonly noOp: boolean;
    readonly outputs: {
        [name: string]: string;
    };
    readonly stackArn: string;
    /**
     * The change set that was created during deployment, if any.
     * Populated when using `change-set` deployment method with `execute: false`.
     */
    readonly changeSet?: DescribeChangeSetCommandOutput;
}
/** The stack is currently in a failpaused state, and needs to be rolled back before the deployment */
export interface NeedRollbackFirstDeployStackResult {
    readonly type: 'failpaused-need-rollback-first';
    readonly reason: 'not-norollback' | 'replacement';
    readonly status: string;
}
/** The upcoming change has a replacement, which requires deploying with --rollback */
export interface ReplacementRequiresRollbackStackResult {
    readonly type: 'replacement-requires-rollback';
}
export declare function assertIsSuccessfulDeployStackResult(x: DeployStackResult): asserts x is SuccessfulDeployStackResult;
//# sourceMappingURL=deployment-result.d.ts.map