import { VoxketEventEmitter } from './event-emitter';
import { VoxketEvents, AgentInfo } from '../types/core';
/**
 * AgentManager
 *
 * Manages all agent-related functionality including:
 * - Agent state (idle, thinking, speaking)
 * - Agent connection status
 * - Agent information
 * - Agent-related events
 */
export declare class AgentManager {
    private agentState;
    private isAgentConnected;
    private currentAgentInfo;
    private eventEmitter;
    constructor(eventEmitter: VoxketEventEmitter<VoxketEvents>);
    /**
     * Get current agent state
     */
    getAgentState(): 'idle' | 'thinking' | 'speaking';
    /**
     * Set agent state
     */
    setAgentState(state: 'idle' | 'thinking' | 'speaking'): void;
    /**
     * Check if agent is connected
     */
    getIsAgentConnected(): boolean;
    /**
     * Set agent connection status
     */
    setAgentConnected(connected: boolean): void;
    /**
     * Get current agent info
     */
    getCurrentAgentInfo(): AgentInfo | null;
    /**
     * Set current agent info
     */
    setCurrentAgentInfo(info: AgentInfo | null): void;
    /**
     * Reset agent state (used on disconnection)
     */
    reset(): void;
    /**
     * Handle agent state changed event
     */
    handleAgentStateChanged(stateObj: any): void;
}
