import { RuntimeConfig } from '../../utils/types/runtime.config';
/**
 * Resolve stage using the same precedence as other commands
 *
 * Precedence order:
 * 1. --stage flag
 * 2. STAGE environment variable
 * 3. First stage in config.stages
 * 4. 'dev' default
 *
 * @param stageOption - Stage from command line option
 * @param config - Runtime CLI configuration
 * @returns Resolved stage name or null if no valid stage found
 */
export declare function resolveStage(stageOption: string | undefined, config: RuntimeConfig): string | null;
/**
 * Resolve AWS region using the same precedence as other commands
 *
 * Precedence order:
 * 1. --region flag
 * 2. stage.awsRegion from config
 * 3. AWS credentials region (from AWS SDK)
 * 4. 'us-east-1' default
 *
 * @param regionOption - Region from command line option
 * @param stage - Resolved stage name
 * @param config - Runtime CLI configuration
 * @returns Resolved region or null if resolution fails
 */
export declare function resolveRegion(regionOption: string | undefined, stage: string, config: RuntimeConfig): string | null;
/**
 * Resolve AWS profile using the same precedence as other commands
 *
 * Precedence order:
 * 1. --profile flag
 * 2. stage.awsProfile from config
 * 3. AWS_PROFILE environment variable
 * 4. undefined (use default credentials)
 *
 * @param profileOption - Profile from command line option
 * @param stage - Resolved stage name
 * @param config - Runtime CLI configuration
 * @returns Resolved profile or undefined for default credentials
 */
export declare function resolveProfile(profileOption: string | undefined, stage: string, config: RuntimeConfig): string | undefined;
/**
 * Resolve AWS region asynchronously using the AWS SDK
 * This is used when we need to query the AWS SDK for region resolution
 *
 * @param regionOption - Region from command line option
 * @param stage - Resolved stage name
 * @param config - Runtime CLI configuration
 * @returns Promise resolving to region or null if resolution fails
 */
export declare function resolveRegionAsync(regionOption: string | undefined, stage: string, config: RuntimeConfig): Promise<string | null>;
