/**
 * Execution Mode Handler
 *
 * Determines whether to execute commands locally or in Docker.
 */
import type { GlobalOptions } from '../types/global.js';
import type { Logger } from './logger.js';
/**
 * Execution mode
 */
export type ExecutionMode = 'local' | 'docker';
/**
 * Get execution mode from options
 *
 * @param options - Global options
 * @returns Execution mode
 */
export declare function getExecutionMode(options: GlobalOptions): ExecutionMode;
/**
 * Execute command handler type
 */
export type ExecuteHandler = () => Promise<void>;
/**
 * Execute command based on mode
 *
 * @param localHandler - Function to execute locally
 * @param dockerCommand - Docker command name
 * @param dockerArgs - Docker command arguments
 * @param options - Global options
 * @param logger - Logger instance
 * @param configFile - Optional config file path to mount in Docker
 */
export declare function executeCommand(localHandler: ExecuteHandler, dockerCommand: string, dockerArgs: string[], options: GlobalOptions, logger?: Logger, configFile?: string): Promise<void>;
//# sourceMappingURL=execution.d.ts.map