/** * @license * Copyright 2026 Google LLC * SPDX-License-Identifier: Apache-2.0 */ import { Part as A2APart, Message, Task, TaskArtifactUpdateEvent, TaskStatusUpdateEvent } from '@a2a-js/sdk'; /** * Message roles. */ export declare enum MessageRole { USER = "user", AGENT = "agent" } /** * Task states. */ export declare enum TaskState { SUBMITTED = "submitted", WORKING = "working", COMPLETED = "completed", FAILED = "failed", CANCELED = "canceled", REJECTED = "rejected", INPUT_REQUIRED = "input-required" } /** * A2A event. */ export type A2AEvent = Task | Message | TaskStatusUpdateEvent | TaskArtifactUpdateEvent; /** * Checks if the event is an A2A TaskStatusUpdateEvent. */ export declare function isTaskStatusUpdateEvent(event: unknown): event is TaskStatusUpdateEvent; /** * Checks if the event is an A2A TaskArtifactUpdateEvent. */ export declare function isTaskArtifactUpdateEvent(event: unknown): event is TaskArtifactUpdateEvent; /** * Checks if the event is an A2A Message. */ export declare function isMessage(event: unknown): event is Message; /** * Checks if the event is an A2A Task. */ export declare function isTask(event: unknown): event is Task; /** * Gets the metadata from an A2A event. */ export declare function getEventMetadata(event: A2AEvent): Record; /** * Checks if the event is a failed task status update event. */ export declare function isFailedTaskStatusUpdateEvent(event: unknown): boolean; /** * Checks if the event is a terminal task status update event. */ export declare function isTerminalTaskStatusUpdateEvent(event: unknown): boolean; /** * Checks if the event is an input required task status update event. */ export declare function isInputRequiredTaskStatusUpdateEvent(event: unknown): boolean; /** * Gets the error message from a failed task status update event. */ export declare function getFailedTaskStatusUpdateEventError(event: TaskStatusUpdateEvent | Task): string | undefined; /** * Creates a task submitted event. */ export declare function createTaskSubmittedEvent({ taskId, contextId, message, metadata, }: { taskId: string; contextId: string; message: Message; metadata?: Record; }): TaskStatusUpdateEvent; /** * Creates a task with submitted status. */ export declare function createTask({ contextId, message, taskId, metadata, }: { taskId: string; contextId: string; message: Message; metadata?: Record; }): Task; /** * Creates a task working event. */ export declare function createTaskWorkingEvent({ taskId, contextId, message, metadata, }: { taskId: string; contextId: string; message?: Message; metadata?: Record; }): TaskStatusUpdateEvent; /** * Creates a task completed event. */ export declare function createTaskCompletedEvent({ taskId, contextId, metadata, }: { taskId: string; contextId: string; metadata?: Record; }): TaskStatusUpdateEvent; /** * Creates an artifact update event. */ export declare function createTaskArtifactUpdateEvent({ taskId, contextId, artifactId, parts, metadata, append, lastChunk, }: { taskId: string; contextId: string; artifactId?: string; parts?: A2APart[]; metadata?: Record; append?: boolean; lastChunk?: boolean; }): TaskArtifactUpdateEvent; /** * Creates an error message for task execution failure. */ export declare function createTaskFailedEvent({ taskId, contextId, error, metadata, }: { taskId: string; contextId: string; error: Error; metadata?: Record; }): TaskStatusUpdateEvent; /** * Creates an input required event. */ export declare function createTaskInputRequiredEvent({ taskId, contextId, parts, metadata, }: { taskId: string; contextId: string; parts: A2APart[]; metadata?: Record; }): TaskStatusUpdateEvent; /** * Creates an error message for missing input for a function call. */ export declare function createInputMissingErrorEvent({ taskId, contextId, parts, metadata, }: { parts: A2APart[]; taskId: string; contextId: string; metadata?: Record; }): TaskStatusUpdateEvent;