import type { AgentEvent } from "@clinebot/agents";
import type { CoreSessionConfig } from "../types/config";
import type { CoreSessionEvent } from "../types/events";
import type { SessionAccumulatedUsage } from "./session-manager";
import type { ActiveSession } from "./utils/types";
export declare function extractSkillNameFromToolInput(input: unknown): string | undefined;
export interface AgentEventContext {
    sessionId: string;
    config: CoreSessionConfig;
    liveSession: ActiveSession | undefined;
    usageBySession: Map<string, SessionAccumulatedUsage>;
    persistMessages: (sessionId: string, messages: unknown[], systemPrompt?: string) => void;
    emit: (event: CoreSessionEvent) => void;
}
export declare function handleAgentEvent(ctx: AgentEventContext, event: AgentEvent): void;
