/**
 * @license
 * Copyright 2025 Vybestack LLC
 * SPDX-License-Identifier: Apache-2.0
 */
import { Config, GeminiChat } from '@vybestack/llxprt-code-core';
import * as acp from '@agentclientprotocol/sdk';
import { LoadedSettings } from '../config/settings.js';
export declare function parseZedAuthMethodId(methodId: string, availableProfiles: string[]): string;
export declare function runZedIntegration(config: Config, settings: LoadedSettings): Promise<void>;
export declare class GeminiAgent {
    private config;
    private connection;
    private sessions;
    private clientCapabilities;
    private logger;
    constructor(config: Config, _settings: LoadedSettings, connection: acp.AgentSideConnection);
    /**
     * @plan:PLAN-20250218-STATELESSPROVIDER.P07
     * @requirement:REQ-SP-005
     * Reapply profile-derived credentials and base URLs through runtime helpers
     * to keep provider state in sync with the CLI context.
     * @pseudocode:cli-runtime.md lines 9-15
     */
    private applyRuntimeProviderOverrides;
    initialize(args: acp.InitializeRequest): Promise<acp.InitializeResponse>;
    authenticate({ methodId }: acp.AuthenticateRequest): Promise<void>;
    newSession({ cwd: _cwd, mcpServers: _mcpServers, }: acp.NewSessionRequest): Promise<acp.NewSessionResponse>;
    setSessionMode(params: acp.SetSessionModeRequest): Promise<acp.SetSessionModeResponse>;
    cancel(params: acp.CancelNotification): Promise<void>;
    prompt(params: acp.PromptRequest): Promise<acp.PromptResponse>;
}
export declare class Session {
    #private;
    private readonly id;
    private readonly chat;
    private readonly config;
    private readonly connection;
    private pendingPrompt;
    private emojiFilter;
    private logger;
    constructor(id: string, chat: GeminiChat, config: Config, connection: acp.AgentSideConnection);
    setMode(modeId: acp.SessionModeId): acp.SetSessionModeResponse;
    cancelPendingPrompt(): Promise<void>;
    prompt(params: acp.PromptRequest): Promise<acp.PromptResponse>;
    private sendUpdate;
    private runTool;
    private extractToolResultText;
    private extractTextFromPartList;
    private normalizeToParts;
    private extractOutputString;
    private isContent;
    debug(msg: string): void;
    private sendPlanUpdate;
}
