import type * as cxapi from '@aws-cdk/cloud-assembly-api';
import type { StackResourceDrift } from '@aws-sdk/client-cloudformation';
/**
 * Props for the Drift Formatter
 */
export interface DriftFormatterProps {
    /**
     * The CloudFormation stack artifact
     */
    readonly stack: cxapi.CloudFormationStackArtifact;
    /**
     * The results of stack drift detection
     */
    readonly resourceDrifts: StackResourceDrift[];
}
interface DriftFormatterOutput {
    /**
     * Number of resources with drift. If undefined, then an error occurred
     * and resources were not properly checked for drift.
     */
    readonly numResourcesWithDrift: number;
    /**
     * How many resources were not checked for drift. If undefined, then an
     * error occurred and resources were not properly checked for drift.
     */
    readonly numResourcesUnchecked: number;
    /**
     * Resources that have not changed
     */
    readonly unchanged?: string;
    /**
     * Resources that were not checked for drift or have an UNKNOWN drift status
     */
    readonly unchecked?: string;
    /**
     * Resources with drift
     */
    readonly modified?: string;
    /**
     * Resources that have been deleted (drift)
     */
    readonly deleted?: string;
    /**
     * The header, containing the stack name
     */
    readonly stackHeader: string;
    /**
     * The final results (summary) of the drift results
     */
    readonly summary: string;
}
/**
 * Class for formatting drift detection output
 */
export declare class DriftFormatter {
    readonly stackName: string;
    private readonly stack;
    private readonly resourceDriftResults;
    private readonly allStackResources;
    constructor(props: DriftFormatterProps);
    /**
     * Format the stack drift detection results
     */
    formatStackDrift(): DriftFormatterOutput;
    /**
     * Renders stack drift information
     *
     * @param logicalToPathMap - A map from logical ID to construct path
     */
    private formatStackDriftChanges;
    private formatLogicalId;
    private printSectionHeader;
    private printSectionFooter;
    private formatTreeDiff;
}
export {};
//# sourceMappingURL=drift-formatter.d.ts.map