import type { RuntimeEventBus } from '../events/index.js';
import type { EmitterContext } from './index.js';
/** Emit AGENT_SPAWNING when an agent is being initialised. */
export declare function emitAgentSpawning(bus: RuntimeEventBus, ctx: EmitterContext, data: {
    agentId: string;
    taskId?: string | undefined;
    task: string;
    parentAgentId?: string | undefined;
    orchestrationGraphId?: string | undefined;
    parentNodeId?: string | undefined;
}): void;
/** Emit AGENT_RUNNING when an agent starts active execution. */
export declare function emitAgentRunning(bus: RuntimeEventBus, ctx: EmitterContext, data: {
    agentId: string;
    taskId?: string;
}): void;
/** Emit AGENT_PROGRESS when an agent reports a progress string. */
export declare function emitAgentProgress(bus: RuntimeEventBus, ctx: EmitterContext, data: {
    agentId: string;
    taskId?: string;
    progress: string;
}): void;
/** Emit AGENT_STREAM_DELTA when an agent streams output text. */
export declare function emitAgentStreamDelta(bus: RuntimeEventBus, ctx: EmitterContext, data: {
    agentId: string;
    taskId?: string;
    content: string;
    accumulated: string;
}): void;
/** Emit AGENT_AWAITING_MESSAGE when an agent is waiting to send to LLM. */
export declare function emitAgentAwaitingMessage(bus: RuntimeEventBus, ctx: EmitterContext, data: {
    agentId: string;
    taskId?: string;
}): void;
/** Emit AGENT_AWAITING_TOOL when an agent is waiting for a tool call. */
export declare function emitAgentAwaitingTool(bus: RuntimeEventBus, ctx: EmitterContext, data: {
    agentId: string;
    taskId?: string;
    callId: string;
    tool: string;
}): void;
/** Emit AGENT_FINALIZING when an agent is assembling its final output. */
export declare function emitAgentFinalizing(bus: RuntimeEventBus, ctx: EmitterContext, data: {
    agentId: string;
    taskId?: string;
}): void;
/** Emit AGENT_COMPLETED when an agent finishes successfully. */
export declare function emitAgentCompleted(bus: RuntimeEventBus, ctx: EmitterContext, data: {
    agentId: string;
    taskId?: string;
    durationMs: number;
    output?: string;
    toolCallsMade?: number;
}): void;
/** Emit AGENT_FAILED when an agent fails. */
export declare function emitAgentFailed(bus: RuntimeEventBus, ctx: EmitterContext, data: {
    agentId: string;
    taskId?: string;
    error: string;
    durationMs: number;
}): void;
/** Emit AGENT_CANCELLED when an agent is cancelled. */
export declare function emitAgentCancelled(bus: RuntimeEventBus, ctx: EmitterContext, data: {
    agentId: string;
    taskId?: string;
    reason?: string;
}): void;
//# sourceMappingURL=agents.d.ts.map