/**
 * @license
 * Copyright 2025 Vybestack LLC
 * SPDX-License-Identifier: Apache-2.0
 */
import { Config, FileDiscoveryService, FileFilteringOptions } from '@vybestack/llxprt-code-core';
import { Settings } from './settings.js';
import { Extension } from './extension.js';
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;
    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;
    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;
}>;
export declare function loadCliConfig(settings: Settings, extensions: Extension[], sessionId: string, argv: CliArgs, cwd?: string): Promise<Config>;
export declare function loadEnvironment(): void;
