import { Task, TaskStatus, Artifact, Message, TaskStatusUpdateEvent, TaskArtifactUpdateEvent } from "../types/types.js";
declare class TaskHandler {
    private task;
    constructor(baseTask?: Partial<Omit<Task, "kind">>);
    withId(id: string): TaskHandler;
    withContextId(contextId: string): TaskHandler;
    withStatus(status: TaskStatus): TaskHandler;
    handleStatusUpdate(event: TaskStatusUpdateEvent): TaskHandler;
    withArtifacts(artifacts: Artifact[]): TaskHandler;
    upsertArtifact(artifact: Artifact, append?: boolean): TaskHandler;
    handleArtifactUpdate(event: TaskArtifactUpdateEvent): TaskHandler;
    withMetadata(metadata: Record<string, any>): TaskHandler;
    withHistory(messages: Message[]): TaskHandler;
    addMessageToHistory(message: Message): TaskHandler;
    getTask(): Task;
}
export { TaskHandler };
