interface ExpectOptions {
    expect: string | RegExp;
    send?: string;
}
interface ExpectResult {
    stdout: string;
    stderr: string;
    code: number | null;
}
interface D1Database {
    name: string;
    uuid: string;
    [key: string]: any;
}
/**
 * A mini expect-like utility for handling interactive CLI prompts and verifying output
 * @param command The command to execute
 * @param expectations Array of {expect, send} objects for interactive responses and verification
 * @param options Additional options for command execution including working directory and environment
 * @returns Promise that resolves when the command completes
 */
export declare function $expect(command: string, expectations: Array<ExpectOptions>, options?: {
    reject?: boolean;
    env?: NodeJS.ProcessEnv;
    cwd?: string;
}): Promise<ExpectResult>;
/**
 * Ensures Cloudflare account ID is set in environment
 * First checks wrangler cache, then environment variables, and finally guides the user
 */
export declare function ensureCloudflareAccountId(cwd?: string, projectDir?: string): Promise<void>;
/**
 * Run the release command to deploy to Cloudflare
 */
export declare function runRelease(cwd: string, projectDir: string, resourceUniqueKey: string): Promise<{
    url: string;
    workerName: string;
}>;
/**
 * Run a local production preview server (build + preview) and return the URL.
 */
export declare function runPreviewServer(packageManager?: string, cwd?: string, preferredPort?: number): Promise<{
    url: string;
    stopPreview: () => Promise<void>;
    port: number;
}>;
/**
 * Check if a resource name includes a specific resource unique key
 * This is used to identify resources created during our tests
 * Handles both full format (adjective-animal-hash) and hash-only format
 */
export declare function isRelatedToTest(resourceName: string, resourceUniqueKey: string): boolean;
/**
 * Delete the worker using wrangler
 */
export declare function deleteWorker(workerName: string, projectDir: string, resourceUniqueKey: string): Promise<void>;
/**
 * List D1 databases using wrangler
 */
export declare function listD1Databases(cwd?: string): Promise<Array<D1Database>>;
/**
 * Delete a D1 database using wrangler
 */
export declare function deleteD1Database(name: string, cwd: string, resourceUniqueKey: string): Promise<void>;
export {};
