///
import * as child_process from 'child_process';
export declare const INTEG_TEST_DIR: string;
export declare const STACK_NAME_PREFIX: string;
export interface ShellOptions extends child_process.SpawnOptions {
/**
* Properties to add to 'env'
*/
modEnv?: Record;
/**
* Don't fail when exiting with an error
*
* @default false
*/
allowErrExit?: boolean;
/**
* Whether to capture stderr
*
* @default true
*/
captureStderr?: boolean;
}
export interface CdkCliOptions extends ShellOptions {
options?: string[];
neverRequireApproval?: boolean;
}
export declare function log(x: string): void;
export declare function cdkDeploy(stackNames: string | string[], options?: CdkCliOptions): Promise;
export declare function cdkDestroy(stackNames: string | string[], options?: CdkCliOptions): Promise;
export declare function cdk(args: string[], options?: CdkCliOptions): Promise;
export declare function fullStackName(stackName: string): string;
export declare function fullStackName(stackNames: string[]): string[];
/**
* Prepare a target dir byreplicating a source directory
*/
export declare function cloneDirectory(source: string, target: string): Promise;
/**
* Prepare the app fixture
*
* If this is done in the main test script, it will be skipped
* in the subprocess scripts since the app fixture can just be reused.
*/
export declare function prepareAppFixture(): Promise;
/**
* Return the stacks starting with our testing prefix that should be deleted
*/
export declare function deleteableStacks(prefix: string): Promise;
/**
* Cleanup leftover stacks and buckets
*/
export declare function cleanup(): Promise;
/**
* A shell command that does what you want
*
* Is platform-aware, handles errors nicely.
*/
export declare function shell(command: string[], options?: ShellOptions): Promise;
/**
* Append this to the list of buckets to potentially delete
*
* At the end of a test, we clean up buckets that may not have gotten destroyed
* (for whatever reason).
*/
export declare function rememberToDeleteBucket(bucketName: string): void;