export interface GlobalConfig {
    executionStrategy?: string;
    websocketEnabled?: boolean;
    autoContextFetchEnabled?: boolean;
    yoloModeEnabled?: boolean;
    yoloModeMessage?: string;
    streamingEnabled?: boolean;
    toolsEnabled?: boolean;
    syntaxValidationEnabled?: boolean;
    historyCompressionEnabled?: boolean;
    llmRetryEnabled?: boolean;
    llmRetryMaxAttempts?: number;
    contextTokenLimit?: number;
    followupTokenLimit?: number;
    notificationsEnabled?: boolean;
    openrouterApiKey?: string;
    zaiApiKey?: string;
    alibabaApiKey?: string;
    ollamaApiKey?: string;
    openaiApiKey?: string;
    openaiBaseUrl?: string;
}
export declare class GlobalConfigService {
    private config;
    private initPromise;
    constructor();
    waitForInit(): Promise<void>;
    private loadConfig;
    private saveConfig;
    getConfig(): GlobalConfig;
    updateConfig(updates: Partial<GlobalConfig>): Promise<GlobalConfig>;
    get<K extends keyof GlobalConfig>(key: K): GlobalConfig[K] | undefined;
    _setConfig(config: GlobalConfig): void;
}
