/**
 * @license
 * Copyright 2025 Vybestack LLC
 * SPDX-License-Identifier: Apache-2.0
 */
import { Config, FileDiscoveryService, FileFilteringOptions, SettingsService } from '@vybestack/llxprt-code-core';
import { Settings } from './settings.js';
import { Extension } from './extension.js';
import type { ExtensionEnablementManager } from './extensions/extensionEnablement.js';
export declare const READ_ONLY_TOOL_NAMES: readonly ["glob", "search_file_content", "read_file", "read_many_files", "list_directory", "ls", "list_subagents", "google_web_search", "web_fetch", "todo_read", "task", "self_emitvalue"];
export interface CliArgs {
    model: string | undefined;
    sandbox: boolean | string | undefined;
    sandboxImage: string | undefined;
    debug: boolean | undefined;
    prompt: string | undefined;
    promptInteractive: string | undefined;
    allFiles: boolean | undefined;
    showMemoryUsage: boolean | undefined;
    yolo: boolean | undefined;
    approvalMode: string | undefined;
    telemetry: boolean | undefined;
    checkpointing: boolean | undefined;
    telemetryTarget: string | undefined;
    telemetryOtlpEndpoint: string | undefined;
    telemetryLogPrompts: boolean | undefined;
    telemetryOutfile: string | undefined;
    allowedMcpServerNames: string[] | undefined;
    allowedTools: string[] | undefined;
    experimentalAcp: boolean | undefined;
    experimentalUi: boolean | undefined;
    extensions: string[] | undefined;
    listExtensions: boolean | undefined;
    provider: string | undefined;
    key: string | undefined;
    keyfile: string | undefined;
    baseurl: string | undefined;
    proxy: string | undefined;
    includeDirectories: string[] | undefined;
    profileLoad: string | undefined;
    loadMemoryFromIncludeDirectories: boolean | undefined;
    ideMode: string | undefined;
    screenReader: boolean | undefined;
    useSmartEdit: boolean | undefined;
    sessionSummary: string | undefined;
    dumponerror: boolean | undefined;
    promptWords: string[] | undefined;
    set: string[] | undefined;
}
export declare function parseArguments(settings: Settings): Promise<CliArgs>;
export declare function loadHierarchicalLlxprtMemory(currentWorkingDirectory: string, includeDirectoriesToReadGemini: readonly string[] | undefined, debugMode: boolean, fileService: FileDiscoveryService, settings: Settings, extensionContextFilePaths: string[] | undefined, folderTrust: boolean, memoryImportFormat?: 'flat' | 'tree', fileFilteringOptions?: FileFilteringOptions): Promise<{
    memoryContent: string;
    fileCount: number;
    filePaths: string[];
}>;
export declare function isDebugMode(argv: CliArgs): boolean;
export declare function loadCliConfig(settings: Settings, extensions: Extension[], extensionEnablementManager: ExtensionEnablementManager, sessionId: string, argv: CliArgs, cwd?: string, runtimeOverrides?: {
    settingsService?: SettingsService;
}): Promise<Config>;
export declare function loadEnvironment(): void;
export { getCliRuntimeConfig, getCliRuntimeServices, getCliProviderManager, getActiveProviderStatus, listProviders as listRuntimeProviders, } from '../runtime/runtimeSettings.js';
