import { CommandResult, Logger } from '../types/cli.types';
import { RuntimeConfig } from '../../utils/types/runtime.config';
/**
 * Options for the dev command
 */
export interface DevOptions {
    /** Port for the development server */
    port?: number;
    /** Stage to use for configuration */
    stage?: string;
    /** Disable Hot Module Replacement (HMR) */
    noHmr?: boolean;
    /** Enable Awake Lambda Development mode */
    live?: boolean;
    /** Developer ID for session isolation (Live Dev) */
    devId?: string;
    /** Node.js inspector port for debugging (Live Dev) */
    inspectorPort?: number;
    /** Disable file watching and hot reload (Live Dev) */
    noWatch?: boolean;
    /** Fallback mode when offline: 'execute' or 'error' (Live Dev) */
    fallback?: 'execute' | 'error';
    /** Log full request/response payloads (Live Dev) */
    debugFullPayload?: boolean;
    /** Enable verbose logging */
    verbose?: boolean;
    /** Force refresh metadata from CloudFormation, bypass cache (Live Dev) */
    refreshMetadata?: boolean;
    /** Use pattern-based resource names without CloudFormation (Live Dev) */
    localResources?: boolean;
    /** Skip resource validation (Live Dev) */
    skipValidation?: boolean;
    /** Custom CloudFormation stack name override (Live Dev) */
    stackName?: string;
}
/**
 * Start local development server
 *
 * The dev server serves a static HTML shell and the React bundle for client-side rendering.
 * It does NOT perform serverless rendering cross-domain or manage builds - users should run their build process separately.
 *
 * When --live flag is provided, starts Awake Lambda Development mode instead,
 * which routes real AWS Lambda invocations to the local machine for debugging.
 */
export declare function devCommand(options: DevOptions, config: RuntimeConfig, logger: Logger, cwd?: string): Promise<CommandResult>;
