/**
 * Walk an object tree depth-first, calling visitor on every node.
 */
export declare function walkObject(obj: any, visitor: (value: any) => void): void;
/**
 * Replace all {Ref}, {Fn::GetAtt}, and {Fn::Sub} references to a logical ID with literal values.
 */
export declare function replaceInObject(obj: any, logicalId: string, values: {
    ref: string;
    attrs: Record<string, string>;
}): any;
/**
 * Replace all references to a logical ID across Resources, Outputs, and Conditions.
 */
export declare function replaceReferences(template: any, logicalId: string, values: {
    ref: string;
    attrs: Record<string, string>;
}): void;
/**
 * Remove all DependsOn references to a logical ID from the template.
 */
export declare function removeDependsOn(template: any, logicalId: string): void;
/**
 * Find all resources whose aws:cdk:path starts with `<stackName>/<constructPath>/`.
 */
export declare function findResourcesByPath(resources: Record<string, any>, stackName: string, constructPath: string): string[];
/**
 * Find resources in the remaining template that still reference any of the orphaned logical IDs.
 */
export declare function findBlockingResources(remainingTemplate: any, orphanedIds: string[], fullTemplate: any): string[];
/**
 * Check if any resources in the template have aws:cdk:path metadata at all.
 * Used to detect if metadata has been disabled.
 */
export declare function hasAnyCdkPathMetadata(resources: Record<string, any>): boolean;
import type { DeployStackResult, SuccessfulDeployStackResult } from '../../deployments/deployment-result';
/**
 * Verify a deploy result completed successfully.
 */
export declare function assertDeploySucceeded(result: DeployStackResult, step: string): asserts result is SuccessfulDeployStackResult;
/**
 * CloudFormation requires at least one resource in the template.
 * Add a placeholder if all resources were removed.
 */
export declare function ensureNonEmptyResources(template: any): void;
/**
 * Parse construct paths like `/MyStack/MyTable` or `MyStack/MyTable` into
 * a stack construct ID and construct-level paths.
 *
 * All paths must reference the same stack.
 */
export declare function parseAndValidateConstructPaths(paths: string[]): {
    stackId: string;
    constructPaths: string[];
};
//# sourceMappingURL=helpers.d.ts.map