/**
 * CLI Config Loader
 *
 * Loads riverbank.config.ts and extracts CLI-relevant configuration
 * (contentDir and sync settings) with appropriate defaults.
 */
import type { SyncConfig, BlockFieldExtensionsMap } from '../config/types';
/**
 * Loaded CLI configuration with defaults applied.
 */
export interface LoadedCliConfig {
    /** Content directory path (resolved to absolute path) */
    contentDir: string;
    /** Sync behavior settings with defaults */
    sync: Required<SyncConfig>;
    /** Custom block field extensions from config (for validation) */
    blockFieldExtensions?: BlockFieldExtensionsMap;
    /** Active theme name for local loading and default push */
    activeTheme: string;
}
/**
 * Load CLI configuration from riverbank.config.ts.
 *
 * Extracts contentDir and sync settings, applying defaults where not specified.
 *
 * @param configPath - Optional path to config file or directory
 * @returns Loaded CLI config with defaults applied
 *
 * @example
 * ```typescript
 * const config = await loadCliConfig();
 * console.log(config.contentDir); // './content' or custom path
 * console.log(config.sync.existingEntries); // 'skip' or 'update'
 * ```
 */
export declare function loadCliConfig(configPath?: string): Promise<LoadedCliConfig>;
/**
 * Check if a CLI config file exists.
 *
 * @param configPath - Optional path to check
 * @returns True if config file exists
 */
export declare function hasCliConfig(configPath?: string): Promise<boolean>;
