UNPKG

@artinet/sdk

Version:

A TypeScript SDK for building collaborative AI agents.

2,239 lines 98.9 kB
/**
 * Copyright 2025 The Artinet Project
 * SPDX-License-Identifier: Apache-2.0
 */
export declare const createA2ARouter: () => import("@trpc/server").TRPCBuiltRouter<{
    ctx: import("../trpc.js").A2AEnv;
    meta: object;
    errorShape: import("@trpc/server").TRPCDefaultErrorShape;
    transformer: false;
}, import("@trpc/server").TRPCDecorateCreateRouterOptions<{
    agentCard: import("@trpc/server").TRPCQueryProcedure<{
        input: void;
        output: {
            protocolVersion: string;
            name: string;
            description: string;
            url: string;
            version: string;
            capabilities: {
                streaming?: boolean | undefined;
                pushNotifications?: boolean | undefined;
                stateTransitionHistory?: boolean | undefined;
                extensions?: {
                    uri: string;
                    description?: string | undefined;
                    required?: boolean | undefined;
                    params?: Record<string, unknown> | undefined;
                }[] | undefined;
            };
            defaultInputModes: string[];
            defaultOutputModes: string[];
            skills: {
                id: string;
                name: string;
                description: string;
                tags: string[];
                examples?: string[] | undefined;
                inputModes?: string[] | undefined;
                outputModes?: string[] | undefined;
                security?: Record<string, string[]>[] | undefined;
            }[];
            preferredTransport?: string | undefined;
            additionalInterfaces?: {
                url: string;
                transport: string;
            }[] | undefined;
            iconUrl?: string | undefined;
            provider?: {
                organization: string;
                url: string;
            } | undefined;
            documentationUrl?: string | undefined;
            securitySchemes?: Record<string, {
                type: "apiKey";
                in: "query" | "header" | "cookie";
                name: string;
                description?: string | undefined;
            } | {
                type: "http";
                scheme: string;
                description?: string | undefined;
                bearerFormat?: string | undefined;
            } | {
                type: "oauth2";
                flows: {
                    authorizationCode?: {
                        authorizationUrl: string;
                        tokenUrl: string;
                        scopes: Record<string, string>;
                        refreshUrl?: string | undefined;
                    } | undefined;
                    clientCredentials?: {
                        tokenUrl: string;
                        scopes: Record<string, string>;
                        refreshUrl?: string | undefined;
                    } | undefined;
                    implicit?: {
                        authorizationUrl: string;
                        scopes: Record<string, string>;
                        refreshUrl?: string | undefined;
                    } | undefined;
                    password?: {
                        tokenUrl: string;
                        scopes: Record<string, string>;
                        refreshUrl?: string | undefined;
                    } | undefined;
                };
                description?: string | undefined;
                oauth2MetadataUrl?: string | undefined;
            } | {
                type: "openIdConnect";
                openIdConnectUrl: string;
                description?: string | undefined;
            } | {
                type: "mutualTLS";
                description?: string | undefined;
            }> | undefined;
            security?: Record<string, string[]>[] | undefined;
            supportsAuthenticatedExtendedCard?: boolean | undefined;
            signatures?: {
                protected: string;
                signature: string;
                header?: Record<string, unknown> | undefined;
            }[] | undefined;
        };
        meta: object;
    }>;
    message: import("@trpc/server").TRPCBuiltRouter<{
        ctx: import("../trpc.js").A2AEnv;
        meta: object;
        errorShape: import("@trpc/server").TRPCDefaultErrorShape;
        transformer: false;
    }, import("@trpc/server").TRPCDecorateCreateRouterOptions<{
        send: import("@trpc/server").TRPCMutationProcedure<{
            input: {
                message: {
                    role: "user" | "agent";
                    parts: ({
                        kind: "text";
                        text: string;
                        metadata?: Record<string, unknown> | undefined;
                    } | {
                        kind: "file";
                        file: {
                            bytes: string;
                            name?: string | undefined;
                            mimeType?: string | undefined;
                            uri?: undefined;
                        } | {
                            uri: string;
                            name?: string | undefined;
                            mimeType?: string | undefined;
                            bytes?: undefined;
                        };
                        metadata?: Record<string, unknown> | undefined;
                    } | {
                        kind: "data";
                        data: Record<string, unknown>;
                        metadata?: Record<string, unknown> | undefined;
                    })[];
                    messageId: string;
                    kind: "message";
                    metadata?: Record<string, unknown> | undefined;
                    extensions?: string[] | undefined;
                    referenceTaskIds?: string[] | undefined;
                    taskId?: string | undefined;
                    contextId?: string | undefined;
                };
                configuration?: {
                    acceptedOutputModes?: string[] | undefined;
                    historyLength?: number | undefined;
                    pushNotificationConfig?: {
                        url: string;
                        id?: string | undefined;
                        token?: string | undefined;
                        authentication?: {
                            schemes: string[];
                            credentials?: string | undefined;
                        } | undefined;
                    } | undefined;
                    blocking?: boolean | undefined;
                } | undefined;
                metadata?: Record<string, unknown> | undefined;
            };
            output: {
                role: "user" | "agent";
                parts: ({
                    kind: "text";
                    text: string;
                    metadata?: Record<string, unknown> | undefined;
                } | {
                    kind: "file";
                    file: {
                        bytes: string;
                        name?: string | undefined;
                        mimeType?: string | undefined;
                        uri?: undefined;
                    } | {
                        uri: string;
                        name?: string | undefined;
                        mimeType?: string | undefined;
                        bytes?: undefined;
                    };
                    metadata?: Record<string, unknown> | undefined;
                } | {
                    kind: "data";
                    data: Record<string, unknown>;
                    metadata?: Record<string, unknown> | undefined;
                })[];
                messageId: string;
                kind: "message";
                metadata?: Record<string, unknown> | undefined;
                extensions?: string[] | undefined;
                referenceTaskIds?: string[] | undefined;
                taskId?: string | undefined;
                contextId?: string | undefined;
            } | {
                id: string;
                contextId: string;
                status: {
                    state: "unknown" | "submitted" | "working" | "input-required" | "completed" | "canceled" | "failed" | "rejected" | "auth-required";
                    message?: {
                        role: "user" | "agent";
                        parts: ({
                            kind: "text";
                            text: string;
                            metadata?: Record<string, unknown> | undefined;
                        } | {
                            kind: "file";
                            file: {
                                bytes: string;
                                name?: string | undefined;
                                mimeType?: string | undefined;
                                uri?: undefined;
                            } | {
                                uri: string;
                                name?: string | undefined;
                                mimeType?: string | undefined;
                                bytes?: undefined;
                            };
                            metadata?: Record<string, unknown> | undefined;
                        } | {
                            kind: "data";
                            data: Record<string, unknown>;
                            metadata?: Record<string, unknown> | undefined;
                        })[];
                        messageId: string;
                        kind: "message";
                        metadata?: Record<string, unknown> | undefined;
                        extensions?: string[] | undefined;
                        referenceTaskIds?: string[] | undefined;
                        taskId?: string | undefined;
                        contextId?: string | undefined;
                    } | undefined;
                    timestamp?: string | undefined;
                };
                kind: "task";
                history?: {
                    role: "user" | "agent";
                    parts: ({
                        kind: "text";
                        text: string;
                        metadata?: Record<string, unknown> | undefined;
                    } | {
                        kind: "file";
                        file: {
                            bytes: string;
                            name?: string | undefined;
                            mimeType?: string | undefined;
                            uri?: undefined;
                        } | {
                            uri: string;
                            name?: string | undefined;
                            mimeType?: string | undefined;
                            bytes?: undefined;
                        };
                        metadata?: Record<string, unknown> | undefined;
                    } | {
                        kind: "data";
                        data: Record<string, unknown>;
                        metadata?: Record<string, unknown> | undefined;
                    })[];
                    messageId: string;
                    kind: "message";
                    metadata?: Record<string, unknown> | undefined;
                    extensions?: string[] | undefined;
                    referenceTaskIds?: string[] | undefined;
                    taskId?: string | undefined;
                    contextId?: string | undefined;
                }[] | undefined;
                artifacts?: {
                    artifactId: string;
                    parts: ({
                        kind: "text";
                        text: string;
                        metadata?: Record<string, unknown> | undefined;
                    } | {
                        kind: "file";
                        file: {
                            bytes: string;
                            name?: string | undefined;
                            mimeType?: string | undefined;
                            uri?: undefined;
                        } | {
                            uri: string;
                            name?: string | undefined;
                            mimeType?: string | undefined;
                            bytes?: undefined;
                        };
                        metadata?: Record<string, unknown> | undefined;
                    } | {
                        kind: "data";
                        data: Record<string, unknown>;
                        metadata?: Record<string, unknown> | undefined;
                    })[];
                    name?: string | undefined;
                    description?: string | undefined;
                    metadata?: Record<string, unknown> | undefined;
                    extension?: string[] | undefined;
                }[] | undefined;
                metadata?: Record<string, unknown> | undefined;
            };
            meta: object;
        }>;
        stream: import("@trpc/server").TRPCSubscriptionProcedure<{
            input: {
                message: {
                    role: "user" | "agent";
                    parts: ({
                        kind: "text";
                        text: string;
                        metadata?: Record<string, unknown> | undefined;
                    } | {
                        kind: "file";
                        file: {
                            bytes: string;
                            name?: string | undefined;
                            mimeType?: string | undefined;
                            uri?: undefined;
                        } | {
                            uri: string;
                            name?: string | undefined;
                            mimeType?: string | undefined;
                            bytes?: undefined;
                        };
                        metadata?: Record<string, unknown> | undefined;
                    } | {
                        kind: "data";
                        data: Record<string, unknown>;
                        metadata?: Record<string, unknown> | undefined;
                    })[];
                    messageId: string;
                    kind: "message";
                    metadata?: Record<string, unknown> | undefined;
                    extensions?: string[] | undefined;
                    referenceTaskIds?: string[] | undefined;
                    taskId?: string | undefined;
                    contextId?: string | undefined;
                };
                configuration?: {
                    acceptedOutputModes?: string[] | undefined;
                    historyLength?: number | undefined;
                    pushNotificationConfig?: {
                        url: string;
                        id?: string | undefined;
                        token?: string | undefined;
                        authentication?: {
                            schemes: string[];
                            credentials?: string | undefined;
                        } | undefined;
                    } | undefined;
                    blocking?: boolean | undefined;
                } | undefined;
                metadata?: Record<string, unknown> | undefined;
            };
            output: AsyncIterable<{
                role: "user" | "agent";
                parts: ({
                    kind: "text";
                    text: string;
                    metadata?: Record<string, unknown> | undefined;
                } | {
                    kind: "file";
                    file: {
                        bytes: string;
                        name?: string | undefined;
                        mimeType?: string | undefined;
                        uri?: undefined;
                    } | {
                        uri: string;
                        name?: string | undefined;
                        mimeType?: string | undefined;
                        bytes?: undefined;
                    };
                    metadata?: Record<string, unknown> | undefined;
                } | {
                    kind: "data";
                    data: Record<string, unknown>;
                    metadata?: Record<string, unknown> | undefined;
                })[];
                messageId: string;
                kind: "message";
                metadata?: Record<string, unknown> | undefined;
                extensions?: string[] | undefined;
                referenceTaskIds?: string[] | undefined;
                taskId?: string | undefined;
                contextId?: string | undefined;
            } | {
                id: string;
                contextId: string;
                status: {
                    state: "unknown" | "submitted" | "working" | "input-required" | "completed" | "canceled" | "failed" | "rejected" | "auth-required";
                    message?: {
                        role: "user" | "agent";
                        parts: ({
                            kind: "text";
                            text: string;
                            metadata?: Record<string, unknown> | undefined;
                        } | {
                            kind: "file";
                            file: {
                                bytes: string;
                                name?: string | undefined;
                                mimeType?: string | undefined;
                                uri?: undefined;
                            } | {
                                uri: string;
                                name?: string | undefined;
                                mimeType?: string | undefined;
                                bytes?: undefined;
                            };
                            metadata?: Record<string, unknown> | undefined;
                        } | {
                            kind: "data";
                            data: Record<string, unknown>;
                            metadata?: Record<string, unknown> | undefined;
                        })[];
                        messageId: string;
                        kind: "message";
                        metadata?: Record<string, unknown> | undefined;
                        extensions?: string[] | undefined;
                        referenceTaskIds?: string[] | undefined;
                        taskId?: string | undefined;
                        contextId?: string | undefined;
                    } | undefined;
                    timestamp?: string | undefined;
                };
                kind: "task";
                history?: {
                    role: "user" | "agent";
                    parts: ({
                        kind: "text";
                        text: string;
                        metadata?: Record<string, unknown> | undefined;
                    } | {
                        kind: "file";
                        file: {
                            bytes: string;
                            name?: string | undefined;
                            mimeType?: string | undefined;
                            uri?: undefined;
                        } | {
                            uri: string;
                            name?: string | undefined;
                            mimeType?: string | undefined;
                            bytes?: undefined;
                        };
                        metadata?: Record<string, unknown> | undefined;
                    } | {
                        kind: "data";
                        data: Record<string, unknown>;
                        metadata?: Record<string, unknown> | undefined;
                    })[];
                    messageId: string;
                    kind: "message";
                    metadata?: Record<string, unknown> | undefined;
                    extensions?: string[] | undefined;
                    referenceTaskIds?: string[] | undefined;
                    taskId?: string | undefined;
                    contextId?: string | undefined;
                }[] | undefined;
                artifacts?: {
                    artifactId: string;
                    parts: ({
                        kind: "text";
                        text: string;
                        metadata?: Record<string, unknown> | undefined;
                    } | {
                        kind: "file";
                        file: {
                            bytes: string;
                            name?: string | undefined;
                            mimeType?: string | undefined;
                            uri?: undefined;
                        } | {
                            uri: string;
                            name?: string | undefined;
                            mimeType?: string | undefined;
                            bytes?: undefined;
                        };
                        metadata?: Record<string, unknown> | undefined;
                    } | {
                        kind: "data";
                        data: Record<string, unknown>;
                        metadata?: Record<string, unknown> | undefined;
                    })[];
                    name?: string | undefined;
                    description?: string | undefined;
                    metadata?: Record<string, unknown> | undefined;
                    extension?: string[] | undefined;
                }[] | undefined;
                metadata?: Record<string, unknown> | undefined;
            } | {
                taskId: string;
                contextId: string;
                kind: "status-update";
                status: {
                    state: "unknown" | "submitted" | "working" | "input-required" | "completed" | "canceled" | "failed" | "rejected" | "auth-required";
                    message?: {
                        role: "user" | "agent";
                        parts: ({
                            kind: "text";
                            text: string;
                            metadata?: Record<string, unknown> | undefined;
                        } | {
                            kind: "file";
                            file: {
                                bytes: string;
                                name?: string | undefined;
                                mimeType?: string | undefined;
                                uri?: undefined;
                            } | {
                                uri: string;
                                name?: string | undefined;
                                mimeType?: string | undefined;
                                bytes?: undefined;
                            };
                            metadata?: Record<string, unknown> | undefined;
                        } | {
                            kind: "data";
                            data: Record<string, unknown>;
                            metadata?: Record<string, unknown> | undefined;
                        })[];
                        messageId: string;
                        kind: "message";
                        metadata?: Record<string, unknown> | undefined;
                        extensions?: string[] | undefined;
                        referenceTaskIds?: string[] | undefined;
                        taskId?: string | undefined;
                        contextId?: string | undefined;
                    } | undefined;
                    timestamp?: string | undefined;
                };
                final: boolean;
                metadata?: Record<string, unknown> | undefined;
            } | {
                taskId: string;
                contextId: string;
                kind: "artifact-update";
                artifact: {
                    artifactId: string;
                    parts: ({
                        kind: "text";
                        text: string;
                        metadata?: Record<string, unknown> | undefined;
                    } | {
                        kind: "file";
                        file: {
                            bytes: string;
                            name?: string | undefined;
                            mimeType?: string | undefined;
                            uri?: undefined;
                        } | {
                            uri: string;
                            name?: string | undefined;
                            mimeType?: string | undefined;
                            bytes?: undefined;
                        };
                        metadata?: Record<string, unknown> | undefined;
                    } | {
                        kind: "data";
                        data: Record<string, unknown>;
                        metadata?: Record<string, unknown> | undefined;
                    })[];
                    name?: string | undefined;
                    description?: string | undefined;
                    metadata?: Record<string, unknown> | undefined;
                    extension?: string[] | undefined;
                };
                append?: boolean | undefined;
                lastChunk?: boolean | undefined;
                metadata?: Record<string, unknown> | undefined;
            }, void, unknown>;
            meta: object;
        }>;
    }>>;
    tasks: import("@trpc/server").TRPCBuiltRouter<{
        ctx: import("../trpc.js").A2AEnv;
        meta: object;
        errorShape: import("@trpc/server").TRPCDefaultErrorShape;
        transformer: false;
    }, import("@trpc/server").TRPCDecorateCreateRouterOptions<{
        resubscribe: import("@trpc/server").TRPCSubscriptionProcedure<{
            input: {
                id: string;
                metadata?: Record<string, unknown> | undefined;
            };
            output: AsyncIterable<{
                role: "user" | "agent";
                parts: ({
                    kind: "text";
                    text: string;
                    metadata?: Record<string, unknown> | undefined;
                } | {
                    kind: "file";
                    file: {
                        bytes: string;
                        name?: string | undefined;
                        mimeType?: string | undefined;
                        uri?: undefined;
                    } | {
                        uri: string;
                        name?: string | undefined;
                        mimeType?: string | undefined;
                        bytes?: undefined;
                    };
                    metadata?: Record<string, unknown> | undefined;
                } | {
                    kind: "data";
                    data: Record<string, unknown>;
                    metadata?: Record<string, unknown> | undefined;
                })[];
                messageId: string;
                kind: "message";
                metadata?: Record<string, unknown> | undefined;
                extensions?: string[] | undefined;
                referenceTaskIds?: string[] | undefined;
                taskId?: string | undefined;
                contextId?: string | undefined;
            } | {
                id: string;
                contextId: string;
                status: {
                    state: "unknown" | "submitted" | "working" | "input-required" | "completed" | "canceled" | "failed" | "rejected" | "auth-required";
                    message?: {
                        role: "user" | "agent";
                        parts: ({
                            kind: "text";
                            text: string;
                            metadata?: Record<string, unknown> | undefined;
                        } | {
                            kind: "file";
                            file: {
                                bytes: string;
                                name?: string | undefined;
                                mimeType?: string | undefined;
                                uri?: undefined;
                            } | {
                                uri: string;
                                name?: string | undefined;
                                mimeType?: string | undefined;
                                bytes?: undefined;
                            };
                            metadata?: Record<string, unknown> | undefined;
                        } | {
                            kind: "data";
                            data: Record<string, unknown>;
                            metadata?: Record<string, unknown> | undefined;
                        })[];
                        messageId: string;
                        kind: "message";
                        metadata?: Record<string, unknown> | undefined;
                        extensions?: string[] | undefined;
                        referenceTaskIds?: string[] | undefined;
                        taskId?: string | undefined;
                        contextId?: string | undefined;
                    } | undefined;
                    timestamp?: string | undefined;
                };
                kind: "task";
                history?: {
                    role: "user" | "agent";
                    parts: ({
                        kind: "text";
                        text: string;
                        metadata?: Record<string, unknown> | undefined;
                    } | {
                        kind: "file";
                        file: {
                            bytes: string;
                            name?: string | undefined;
                            mimeType?: string | undefined;
                            uri?: undefined;
                        } | {
                            uri: string;
                            name?: string | undefined;
                            mimeType?: string | undefined;
                            bytes?: undefined;
                        };
                        metadata?: Record<string, unknown> | undefined;
                    } | {
                        kind: "data";
                        data: Record<string, unknown>;
                        metadata?: Record<string, unknown> | undefined;
                    })[];
                    messageId: string;
                    kind: "message";
                    metadata?: Record<string, unknown> | undefined;
                    extensions?: string[] | undefined;
                    referenceTaskIds?: string[] | undefined;
                    taskId?: string | undefined;
                    contextId?: string | undefined;
                }[] | undefined;
                artifacts?: {
                    artifactId: string;
                    parts: ({
                        kind: "text";
                        text: string;
                        metadata?: Record<string, unknown> | undefined;
                    } | {
                        kind: "file";
                        file: {
                            bytes: string;
                            name?: string | undefined;
                            mimeType?: string | undefined;
                            uri?: undefined;
                        } | {
                            uri: string;
                            name?: string | undefined;
                            mimeType?: string | undefined;
                            bytes?: undefined;
                        };
                        metadata?: Record<string, unknown> | undefined;
                    } | {
                        kind: "data";
                        data: Record<string, unknown>;
                        metadata?: Record<string, unknown> | undefined;
                    })[];
                    name?: string | undefined;
                    description?: string | undefined;
                    metadata?: Record<string, unknown> | undefined;
                    extension?: string[] | undefined;
                }[] | undefined;
                metadata?: Record<string, unknown> | undefined;
            } | {
                taskId: string;
                contextId: string;
                kind: "status-update";
                status: {
                    state: "unknown" | "submitted" | "working" | "input-required" | "completed" | "canceled" | "failed" | "rejected" | "auth-required";
                    message?: {
                        role: "user" | "agent";
                        parts: ({
                            kind: "text";
                            text: string;
                            metadata?: Record<string, unknown> | undefined;
                        } | {
                            kind: "file";
                            file: {
                                bytes: string;
                                name?: string | undefined;
                                mimeType?: string | undefined;
                                uri?: undefined;
                            } | {
                                uri: string;
                                name?: string | undefined;
                                mimeType?: string | undefined;
                                bytes?: undefined;
                            };
                            metadata?: Record<string, unknown> | undefined;
                        } | {
                            kind: "data";
                            data: Record<string, unknown>;
                            metadata?: Record<string, unknown> | undefined;
                        })[];
                        messageId: string;
                        kind: "message";
                        metadata?: Record<string, unknown> | undefined;
                        extensions?: string[] | undefined;
                        referenceTaskIds?: string[] | undefined;
                        taskId?: string | undefined;
                        contextId?: string | undefined;
                    } | undefined;
                    timestamp?: string | undefined;
                };
                final: boolean;
                metadata?: Record<string, unknown> | undefined;
            } | {
                taskId: string;
                contextId: string;
                kind: "artifact-update";
                artifact: {
                    artifactId: string;
                    parts: ({
                        kind: "text";
                        text: string;
                        metadata?: Record<string, unknown> | undefined;
                    } | {
                        kind: "file";
                        file: {
                            bytes: string;
                            name?: string | undefined;
                            mimeType?: string | undefined;
                            uri?: undefined;
                        } | {
                            uri: string;
                            name?: string | undefined;
                            mimeType?: string | undefined;
                            bytes?: undefined;
                        };
                        metadata?: Record<string, unknown> | undefined;
                    } | {
                        kind: "data";
                        data: Record<string, unknown>;
                        metadata?: Record<string, unknown> | undefined;
                    })[];
                    name?: string | undefined;
                    description?: string | undefined;
                    metadata?: Record<string, unknown> | undefined;
                    extension?: string[] | undefined;
                };
                append?: boolean | undefined;
                lastChunk?: boolean | undefined;
                metadata?: Record<string, unknown> | undefined;
            }, void, unknown>;
            meta: object;
        }>;
        get: import("@trpc/server").TRPCQueryProcedure<{
            input: {
                id: string;
                metadata?: Record<string, unknown> | undefined;
            };
            output: {
                id: string;
                contextId: string;
                status: {
                    state: "unknown" | "submitted" | "working" | "input-required" | "completed" | "canceled" | "failed" | "rejected" | "auth-required";
                    message?: {
                        role: "user" | "agent";
                        parts: ({
                            kind: "text";
                            text: string;
                            metadata?: Record<string, unknown> | undefined;
                        } | {
                            kind: "file";
                            file: {
                                bytes: string;
                                name?: string | undefined;
                                mimeType?: string | undefined;
                                uri?: undefined;
                            } | {
                                uri: string;
                                name?: string | undefined;
                                mimeType?: string | undefined;
                                bytes?: undefined;
                            };
                            metadata?: Record<string, unknown> | undefined;
                        } | {
                            kind: "data";
                            data: Record<string, unknown>;
                            metadata?: Record<string, unknown> | undefined;
                        })[];
                        messageId: string;
                        kind: "message";
                        metadata?: Record<string, unknown> | undefined;
                        extensions?: string[] | undefined;
                        referenceTaskIds?: string[] | undefined;
                        taskId?: string | undefined;
                        contextId?: string | undefined;
                    } | undefined;
                    timestamp?: string | undefined;
                };
                kind: "task";
                history?: {
                    role: "user" | "agent";
                    parts: ({
                        kind: "text";
                        text: string;
                        metadata?: Record<string, unknown> | undefined;
                    } | {
                        kind: "file";
                        file: {
                            bytes: string;
                            name?: string | undefined;
                            mimeType?: string | undefined;
                            uri?: undefined;
                        } | {
                            uri: string;
                            name?: string | undefined;
                            mimeType?: string | undefined;
                            bytes?: undefined;
                        };
                        metadata?: Record<string, unknown> | undefined;
                    } | {
                        kind: "data";
                        data: Record<string, unknown>;
                        metadata?: Record<string, unknown> | undefined;
                    })[];
                    messageId: string;
                    kind: "message";
                    metadata?: Record<string, unknown> | undefined;
                    extensions?: string[] | undefined;
                    referenceTaskIds?: string[] | undefined;
                    taskId?: string | undefined;
                    contextId?: string | undefined;
                }[] | undefined;
                artifacts?: {
                    artifactId: string;
                    parts: ({
                        kind: "text";
                        text: string;
                        metadata?: Record<string, unknown> | undefined;
                    } | {
                        kind: "file";
                        file: {
                            bytes: string;
                            name?: string | undefined;
                            mimeType?: string | undefined;
                            uri?: undefined;
                        } | {
                            uri: string;
                            name?: string | undefined;
                            mimeType?: string | undefined;
                            bytes?: undefined;
                        };
                        metadata?: Record<string, unknown> | undefined;
                    } | {
                        kind: "data";
                        data: Record<string, unknown>;
                        metadata?: Record<string, unknown> | undefined;
                    })[];
                    name?: string | undefined;
                    description?: string | undefined;
                    metadata?: Record<string, unknown> | undefined;
                    extension?: string[] | undefined;
                }[] | undefined;
                metadata?: Record<string, unknown> | undefined;
            };
            meta: object;
        }>;
        cancel: import("@trpc/server").TRPCMutationProcedure<{
            input: {
                id: string;
                metadata?: Record<string, unknown> | undefined;
            };
            output: {
                id: string;
                contextId: string;
                status: {
                    state: "unknown" | "submitted" | "working" | "input-required" | "completed" | "canceled" | "failed" | "rejected" | "auth-required";
                    message?: {
                        role: "user" | "agent";
                        parts: ({
                            kind: "text";
                            text: string;
                            metadata?: Record<string, unknown> | undefined;
                        } | {
                            kind: "file";
                            file: {
                                bytes: string;
                                name?: string | undefined;
                                mimeType?: string | undefined;
                                uri?: undefined;
                            } | {
                                uri: string;
                                name?: string | undefined;
                                mimeType?: string | undefined;
                                bytes?: undefined;
                            };
                            metadata?: Record<string, unknown> | undefined;
                        } | {
                            kind: "data";
                            data: Record<string, unknown>;
                            metadata?: Record<string, unknown> | undefined;
                        })[];
                        messageId: string;
                        kind: "message";
                        metadata?: Record<string, unknown> | undefined;
                        extensions?: string[] | undefined;
                        referenceTaskIds?: string[] | undefined;
                        taskId?: string | undefined;
                        contextId?: string | undefined;
                    } | undefined;
                    timestamp?: string | undefined;
                };
                kind: "task";
                history?: {
                    role: "user" | "agent";
                    parts: ({
                        kind: "text";
                        text: string;
                        metadata?: Record<string, unknown> | undefined;
                    } | {
                        kind: "file";
                        file: {
                            bytes: string;
                            name?: string | undefined;
                            mimeType?: string | undefined;
                            uri?: undefined;
                        } | {
                            uri: string;
                            name?: string | undefined;
                            mimeType?: string | undefined;
                            bytes?: undefined;
                        };
                        metadata?: Record<string, unknown> | undefined;
                    } | {
                        kind: "data";
                        data: Record<string, unknown>;
                        metadata?: Record<string, unknown> | undefined;
                    })[];
                    messageId: string;
                    kind: "message";
                    metadata?: Record<string, unknown> | undefined;
                    extensions?: string[] | undefined;
                    referenceTaskIds?: string[] | undefined;
                    taskId?: string | undefined;
                    contextId?: string | undefined;
                }[] | undefined;
                artifacts?: {
                    artifactId: string;
                    parts: ({
                        kind: "text";
                        text: string;
                        metadata?: Record<string, unknown> | undefined;
                    } | {
                        kind: "file";
                        file: {
                            bytes: string;
                            name?: string | undefined;
                            mimeType?: string | undefined;
                            uri?: undefined;
                        } | {
                            uri: string;
                            name?: string | undefined;
                            mimeType?: string | undefined;
                            bytes?: undefined;
                        };
                        metadata?: Record<string, unknown> | undefined;
                    } | {
                        kind: "data";
                        data: Record<string, unknown>;
                        metadata?: Record<string, unknown> | undefined;
                    })[];
                    name?: string | undefined;
                    description?: string | undefined;
                    metadata?: Record<string, unknown> | undefined;
                    extension?: string[] | undefined;
                }[] | undefined;
                metadata?: Record<string, unknown> | undefined;
            };
            meta: object;
        }>;
        pushNotificationConfig: import("@trpc/server").TRPCBuiltRouter<{
            ctx: import("../trpc.js").A2AEnv;
            meta: object;
            errorShape: import("@trpc/server").TRPCDefaultErrorShape;
            transformer: false;
        }, import("@trpc/server").TRPCDecorateCreateRouterOptions<{
            set: import("@trpc/server").TRPCMutationProcedure<{
                input: {
                    taskId: string;
                    pushNotificationConfig: {
                        url: string;
                        id?: string | undefined;
                        token?: string | undefined;
                        authentication?: {
                            schemes: string[];
                            credentials?: string | undefined;
                        } | undefined;
                    };
                };
                output: {
                    taskId: string;
                    pushNotificationConfig: {
                        url: string;
                        id?: string | undefined;
                        token?: string | undefined;
                        authentication?: {
                            schemes: string[];
                            credentials?: string | undefined;
                        } | undefined;
                    };
                };
                meta: object;
            }>;
            get: import("@trpc/server").TRPCQueryProcedure<{
                input: {
                    id: string;
                    metadata?: Record<string, unknown> | undefined;
                    pushNotificationConfigId?: string | undefined;
                } | {
                    id: string;
                    metadata?: Record<string, unknown> | undefined;
                };
                output: {
                    taskId: string;
                    pushNotificationConfig: {
                        url: string;
                        id?: string | undefined;
                        token?: string | undefined;
                        authentication?: {
                            schemes: string[];
                            credentials?: string | undefined;
                        } | undefined;
                    };
                };
                meta: object;
            }>;
            list: import("@trpc/server").TRPCQueryProcedure<{
                input: {
                    id: string;
                    metadata?: Record<string, unknown> | undefined;
                };
                output: {
                    taskId: string;
                    pushNotificationConfig: {
                        url: string;
                        id?: string | undefined;
                        token?: string | undefined;
                        authentication?: {
                            schemes: string[];
                            credentials?: string | undefined;
                        } | undefined;
                    };
                }[];
                meta: object;
            }>;
            delete: import("@trpc/server").TRPCMutationProcedure<{
                input: {
                    id: string;
                    pushNotificationConfigId: string;
                    metadata?: Record<string, unknown> | undefined;
                };
                output: null;
                meta: object;
            }>;
        }>>;
    }>>;
}>>;
export type A2ARouter = Awaited<ReturnType<typeof createA2ARouter>>;
export declare const createAgentRouter: () => import("@trpc/server").TRPCBuiltRouter<{
    ctx: import("../trpc.js").A2AEnv;
    meta: object;
    errorShape: import("@trpc/server").TRPCDefaultErrorShape;
    transformer: false;
}, import("@trpc/server").TRPCDecorateCreateRouterOptions<{
    agentCard: import("@trpc/server").TRPCQueryProcedure<{
        input: void;
        output: {
            protocolVersion: string;
            name: string;
            description: string;
            url: string;
            version: string;
            capabilities: {
                streaming?: boolean | undefined;
                pushNotifications?: boolean | undefined;
                stateTransitionHistory?: boolean | undefined;
                extensions?: {
                    uri: string;
                    description?: string | undefined;
                    required?: boolean | undefined;
                    params?: Record<string, unknown> | undefined;
                }[] | undefined;
            };
            defaultInputModes: string[];
            defaultOutputModes: string[];
            skills: {
                id: string;
                name: string;
                description: string;
                tags: string[];
                examples?: string[] | undefined;
                inputModes?: string[] | undefined;
                outputModes?: string[] | undefined;
                security?: Record<string, string[]>[] | undefined;
            }[];
            preferredTransport?: string | undefined;
            additionalInterfaces?: {
                url: string;
                transport: string;
            }[] | undefined;
            iconUrl?: string | undefined;
            provider?: {
                organization: string;
                url: string;
            } | undefined;
            documentationUrl?: string | undefined;
            securitySchemes?: Record<string, {
                type: "apiKey";
                in: "query" | "header" | "cookie";
                name: string;
                description?: string | undefined;
            } | {
                type: "http";
                scheme: string;
                description?: string | undefined;
                bearerFormat?: string | undefined;
            } | {
                type: "oauth2";
                flows: {
                    authorizationCode?: {
                        authorizationUrl: string;
                        tokenUrl: string;
                        scopes: Record<string, string>;
                        refreshUrl?: string | undefined;
                    } | undefined;
                    clientCredentials?: {
                        tokenUrl: string;
                        scopes: Record<string, string>;
                        refreshUrl?: string | undefined;
                    } | undefined;
                    implicit?: {
                        authorizationUrl: string;
                        scopes: Record<string, string>;
                        refreshUrl?: string | undefined;
                    } | undefined;
                    password?: {
                        tokenUrl: string;
                        scopes: Record<string, string>;
                        refreshUrl?: string | undefined;
                    } | undefined;
                };
                description?: string | undefined;
                oauth2MetadataUrl?: string | undefined;
            } | {
                type: "openIdConnect";
                openIdConnectUrl: string;
                description?: string | undefined;
            } | {
                type: "mutualTLS";
                description?: string | undefined;
            }> | undefined;
            security?: Record<string, string[]>[] | undefined;
            supportsAuthenticatedExtendedCard?: boolean | undefined;
            signatures?: {
                protected: string;
                signature: string;
                header?: Record<string, unknown> | undefined;
            }[] | undefined;
        };
        meta: object;
    }>;
    message: import("@trpc/server").TRPCBuiltRouter<{
        ctx: import("../trpc.js").A2AEnv;
        meta: object;
        errorShape: import("@trpc/server").TRPCDefaultErrorShape;
        transformer: false;
    }, import("@trpc/server").TRPCDecorateCreateRouterOptions<{
        send: import("@trpc/server").TRPCMutationProcedure<{
            input: {
                message: {
                    role: "user" | "agent";
                    parts: ({
                        kind: "text";
                        text: string;
                        metadata?: Record<string, unknown> | undefined;
                    } | {
                        kind: "file";
                        file: {
                            bytes: string;
                            name?: string | undefined;
                            mimeType?: string | undefined;
                            uri?: undefined;
                        } | {
                            uri: string;
                            name?: string | undefined;
                            mimeType?: string | undefined;
                            bytes?: undefined;
                        };
                        metadata?: Record<string, unknown> | undefined;
                    } | {
                        kind: "data";
                        data: Record<string, unknown>;
                        metadata?: Record<string, unknown> | undefined;
                    })[];
                    messageId: string;
                    kind: "message";
                    metadata?: Record<string, unknown> | undefined;
                    extensions?: string[] | undefined;
                    referenceTaskIds?: string[] | undefined;
                    taskId?: string | undefined;
                    contextId?: string | undefined;
                };
                configuration?: {
                    acceptedOutputModes?: string[] | undefined;
                    historyLength?: number | undefined;
                    pushNotificationConfig?: {
                        url: string;
                        id?: string | undefined;
                        token?: string | undefined;
                        authentication?: {
                            schemes: string[];
                            credentials?: string | undefined;
                        } | undefined;
                    } | undefined;
                    blocking?: boolean | undefined;
                } | undefined;
                metadata?: Record<string, unknown> | undefined;
            };
            output: {
                role: "user" | "agent";
                parts: ({
                    kind: "text";
                    text: string;
                    metadata?: Record<string, unknown> | undefined;
                } | {
                    kind: "file";
                    file: {
                        bytes: string;
                        name?: string | undefined;
                        mimeType?: string | undefined;
                        uri?: undefined;
                    } | {
                        uri: string;
                        name?: string | undefined;
                        mimeType?: string | undefined;
                        bytes?: undefined;
                    };
                    metadata?: Record<string, unknown> | undefined;
                } | {
                    kind: "data";
                    data: Record<string, unknown>;
                    metadata?: Record<string, unknown> | undefined;
                })[];
                messageId: string;
                kind: "message";
                metadata?: Record<string, unknown> | undefined;
                extensions?: string[] | undefined;
                referenceTaskIds?: string[] | undefined;
                taskId?: string | undefined;
                contextId?: string | undefined;
            } | {
                id: string;
                contextId: string;
                status: {
                    state: "unknown" | "submitted" | "working" | "input-required" | "completed" | "canceled" | "failed" | "rejected" | "auth-required";
                    message?: {
                        role: "user" | "agent";
                        parts: ({
                            kind: "text";
                            text: string;
                            metadata?: Record<string, unknown> | undefined;
                        } | {
                            kind: "file";
                            file: {
                                bytes: string;
                                name?: string | undefined;
                                mimeType?: string | undefined;
                                uri?: undefined;
                            } | {
                                uri: string;
                                name?: string | undefined;
                                mimeType?: string | undefined;
                                bytes?: undefined;
                            };
                            metadata?: Record<string, unknown> | undefined;
                        } | {
                            kind: "data";
                            data: Record<string, unknown>;
                            metadata?: Record<string, unknown> | undefined;
                        })[];
                        messageId: string;
                        kind: "message";
                        metadata?: Record<string, unknown> | undefined;
                        extensions?: string[] | undefined;
                        referenceTaskIds?: string[] | undefined;
                        taskId?: string | undefined;
                        contextId?: string | undefined;
                    } | undefined;
                    timestamp?: string | undefined;
                };
                kind: "task";
                history?: {
                    role: "user" | "agent";
                    parts: ({
                        kind: "text";
                        text: string;
                        metadata?: Record<string, unknown> | undefined;
                    } | {
                        kind: "file";
                        file: {
                            bytes: string;
                            name?: string | undefined;
                            mimeType?: string | undefined;
                            uri?: undefined;
                        } | {
                            uri: string;
                            name?: string | undefined;
                            mimeType?: string | undefined;
                            bytes?: undefined;
                        };
                        metadata?: Record<string, unknown> | undefined;
                    } | {
                        kind: "data";
                        data: Record<string, unknown>;
                        metadata?: Record<string, unknown> | undefined;
                    })[];
                    messageId: string;
                    kind: "message";
                    metadata?: Record<string, unknown> | undefined;
                    extensions?: string[] | undefined;
                    referenceTaskIds?: string[] | undefined;
                    taskId?: string | undefined;
                    contextId?: string | undefined;
                }[] | undefined;
                artifacts?: {
                    artifactId: string;
                    parts: ({
                        kind: "text";
                        text: string;
                        metadata?: Record<string, unknown> | undefined;
                    } | {
                        kind: "file";
                        file: {
                            bytes: string;
                            name?: string | undefined;
                            mimeType?: string | undefined;
                            uri?: undefined;
                        } | {
                            uri: string;
                            name?: string | undefined;
                            mimeType?: string | undefined;
                            bytes?: undefined;
                        };
                        metadata?: Record<string, unknown> | undefined;
                    } | {
                        kind: "data";
                        data: Record<string, unknown>;
                        metadata?: Record<string, unknown> | undefined;
                    })[];
                    name?: string | undefined;
                    description?: string | undefined;
                    metadata?: Record<string, unknown> | undefined;
                    extension?: string[] | undefined;
                }[] | undefined;
                metadata?: Record<string, unknown> | undefined;
            };
            meta: object;
        }>;
        stream: import("@trpc/server").TRPCSubscriptionProcedure<{
            input: {
                message: {
                    role: "user" | "agent";
                    parts: ({
                        kind: "text";
                        text: string;
                        metadata?: Record<string, unknown> | undefined;
                    } | {
                        kind: "file";
                        file: {
                            bytes: string;
                            name?: string | undefined;
                            mimeType?: string | undefined;
                            uri?: undefined;
                        } | {
                            uri: string;
                            name?: string | undefined;
                            mimeType?: string | undefined;
                            bytes?: undefined;
                        };
                        metadata?: Record<string, unknown> | undefined;
                    } | {
                        kind: "data";
                        data: Record<string, unknown>;
                        metadata?: Record<string, unknown> | undefined;
                    })[];
                    messageId: string;
                    kind: "message";
                    metadata?: Record<string, unknown> | undefined;
                    extensions?: string[] | undefined;
                    referenceTaskIds?: string[] | undefined;
                    taskId?: string | undefined;
                    contextId?: string | undefined;
                };
                configuration?: {
                    acceptedOutputModes?: string[] | undefined;
                    historyLength?: number | undefined;
                    pushNotificationConfig?: {
                        url: string;
                        id?: string | undefined;
                        token?: string | undefined;
                        authentication?: {
                            schemes: string[];
                            credentials?: string | undefined;
                        } | undefined;
                    } | undefined;
                    blocking?: boolean | undefined;
                } | undefined;
                metadata?: Record<string, unknown> | undefined;
            };
            output: AsyncIterable<{
                role: "user" | "agent";
                parts: ({
                    kind: "text";
                    text: string;
                    metadata?: Record<string, unknown> | undefined;
                } | {
                    kind: "file";
                    file: {
                        bytes: string;
                        name?: string | undefined;
                        mimeType?: string | undefined;
                        uri?: undefined;
                    } | {
                        uri: string;
                        name?: string | undefined;
                        mimeType?: string | undefined;
                        bytes?: undefined;
                    };
                    metadata?: Record<string, unknown> | undefined;
                } | {
                    kind: "data";
                    data: Record<string, unknown>;
                    metadata?: Record<string, unknown> | undefined;
                })[];
                messageId: string;
                kind: "message";
                metadata?: Record<string, unknown> | undefined;
                extensions?: string[] | undefined;
                referenceTaskIds?: string[] | undefined;
                taskId?: string | undefined;
                contextId?: string | undefined;
            } | {
                id: string;
                contextId: string;
                status: {
                    state: "unknown" | "submitted" | "working" | "input-required" | "completed" | "canceled" | "failed" | "rejected" | "auth-required";
                    message?: {
                        role: "user" | "agent";
                        parts: ({
                            kind: "text";
                            text: string;
                            metadata?: Record<string, unknown> | undefined;
                        } | {
                            kind: "file";
                            file: {
                                bytes: string;
                                name?: string | undefined;
                                mimeType?: string | undefined;
                                uri?: undefined;
                            } | {
                                uri: string;
                                name?: string | undefined;
                                mimeType?: string | undefined;
                                bytes?: undefined;
                            };
                            metadata?: Record<string, unknown> | undefined;
                        } | {
                            kind: "data";
                            data: Record<string, unknown>;
                            metadata?: Record<string, unknown> | undefined;
                        })[];
                        messageId: string;
                        kind: "message";
                        metadata?: Record<string, unknown> | undefined;
                        extensions?: string[] | undefined;
                        referenceTaskIds?: string[] | undefined;
                        taskId?: string | undefined;
                        contextId?: string | undefined;
                    } | undefined;
                    timestamp?: string | undefined;
                };
                kind: "task";
                history?: {
                    role: "user" | "agent";
                    parts: ({
                        kind: "text";
                        text: string;
                        metadata?: Record<string, unknown> | undefined;
                    } | {
                        kind: "file";
                        file: {
                            bytes: string;
                            name?: string | undefined;
                            mimeType?: string | undefined;
                            uri?: undefined;
                        } | {
                            uri: string;
                            name?: string | undefined;
                            mimeType?: string | undefined;
                            bytes?: undefined;
                        };
                        metadata?: Record<string, unknown> | undefined;
                    } | {
                        kind: "data";
                        data: Record<string, unknown>;
                        metadata?: Record<string, unknown> | undefined;
                    })[];
                    messageId: string;
                    kind: "message";
                    metadata?: Record<string, unknown> | undefined;
                    extensions?: string[] | undefined;
                    referenceTaskIds?: string[] | undefined;
                    taskId?: string | undefined;
                    contextId?: string | undefined;
                }[] | undefined;
                artifacts?: {
                    artifactId: string;
                    parts: ({
                        kind: "text";
                        text: string;
                        metadata?: Record<string, unknown> | undefined;
                    } | {
                        kind: "file";
                        file: {
                            bytes: string;
                            name?: string | undefined;
                            mimeType?: string | undefined;
                            uri?: undefined;
                        } | {
                            uri: string;
                            name?: string | undefined;
                            mimeType?: string | undefined;
                            bytes?: undefined;
                        };
                        metadata?: Record<string, unknown> | undefined;
                    } | {
                        kind: "data";
                        data: Record<string, unknown>;
                        metadata?: Record<string, unknown> | undefined;
                    })[];
                    name?: string | undefined;
                    description?: string | undefined;
                    metadata?: Record<string, unknown> | undefined;
                    extension?: string[] | undefined;
                }[] | undefined;
                metadata?: Record<string, unknown> | undefined;
            } | {
                taskId: string;
                contextId: string;
                kind: "status-update";
                status: {
                    state: "unknown" | "submitted" | "working" | "input-required" | "completed" | "canceled" | "failed" | "rejected" | "auth-required";
                    message?: {
                        role: "user" | "agent";
                        parts: ({
                            kind: "text";
                            text: string;
                            metadata?: Record<string, unknown> | undefined;
                        } | {
                            kind: "file";
                            file: {
                                bytes: string;
                                name?: string | undefined;
                                mimeType?: string | undefined;
                                uri?: undefined;
                            } | {
                                uri: string;
                                name?: string | undefined;
                                mimeType?: string | undefined;
                                bytes?: undefined;
                            };
                            metadata?: Record<string, unknown> | undefined;
                        } | {
                            kind: "data";
                            data: Record<string, unknown>;
                            metadata?: Record<string, unknown> | undefined;
                        })[];
                        messageId: string;
                        kind: "message";
                        metadata?: Record<string, unknown> | undefined;
                        extensions?: string[] | undefined;
                        referenceTaskIds?: string[] | undefined;
                        taskId?: string | undefined;
                        contextId?: string | undefined;
                    } | undefined;
                    timestamp?: string | undefined;
                };
                final: boolean;
                metadata?: Record<string, unknown> | undefined;
            } | {
                taskId: string;
                contextId: string;
                kind: "artifact-update";
                artifact: {
                    artifactId: string;
                    parts: ({
                        kind: "text";
                        text: string;
                        metadata?: Record<string, unknown> | undefined;
                    } | {
                        kind: "file";
                        file: {
                            bytes: string;
                            name?: string | undefined;
                            mimeType?: string | undefined;
                            uri?: undefined;
                        } | {
                            uri: string;
                            name?: string | undefined;
                            mimeType?: string | undefined;
                            bytes?: undefined;
                        };
                        metadata?: Record<string, unknown> | undefined;
                    } | {
                        kind: "data";
                        data: Record<string, unknown>;
                        metadata?: Record<string, unknown> | undefined;
                    })[];
                    name?: string | undefined;
                    description?: string | undefined;
                    metadata?: Record<string, unknown> | undefined;
                    extension?: string[] | undefined;
                };
                append?: boolean | undefined;
                lastChunk?: boolean | undefined;
                metadata?: Record<string, unknown> | undefined;
            }, void, unknown>;
            meta: object;
        }>;
    }>>;
    tasks: import("@trpc/server").TRPCBuiltRouter<{
        ctx: import("../trpc.js").A2AEnv;
        meta: object;
        errorShape: import("@trpc/server").TRPCDefaultErrorShape;
        transformer: false;
    }, import("@trpc/server").TRPCDecorateCreateRouterOptions<{
        resubscribe: import("@trpc/server").TRPCSubscriptionProcedure<{
            input: {
                id: string;
                metadata?: Record<string, unknown> | undefined;
            };
            output: AsyncIterable<{
                role: "user" | "agent";
                parts: ({
                    kind: "text";
                    text: string;
                    metadata?: Record<string, unknown> | undefined;
                } | {
                    kind: "file";
                    file: {
                        bytes: string;
                        name?: string | undefined;
                        mimeType?: string | undefined;
                        uri?: undefined;
                    } | {
                        uri: string;
                        name?: string | undefined;
                        mimeType?: string | undefined;
                        bytes?: undefined;
                    };
                    metadata?: Record<string, unknown> | undefined;
                } | {
                    kind: "data";
                    data: Record<string, unknown>;
                    metadata?: Record<string, unknown> | undefined;
                })[];
                messageId: string;
                kind: "message";
                metadata?: Record<string, unknown> | undefined;
                extensions?: string[] | undefined;
                referenceTaskIds?: string[] | undefined;
                taskId?: string | undefined;
                contextId?: string | undefined;
            } | {
                id: string;
                contextId: string;
                status: {
                    state: "unknown" | "submitted" | "working" | "input-required" | "completed" | "canceled" | "failed" | "rejected" | "auth-required";
                    message?: {
                        role: "user" | "agent";
                        parts: ({
                            kind: "text";
                            text: string;
                            metadata?: Record<string, unknown> | undefined;
                        } | {
                            kind: "file";
                            file: {
                                bytes: string;
                                name?: string | undefined;
                                mimeType?: string | undefined;
                                uri?: undefined;
                            } | {
                                uri: string;
                                name?: string | undefined;
                                mimeType?: string | undefined;
                                bytes?: undefined;
                            };
                            metadata?: Record<string, unknown> | undefined;
                        } | {
                            kind: "data";
                            data: Record<string, unknown>;
                            metadata?: Record<string, unknown> | undefined;
                        })[];
                        messageId: string;
                        kind: "message";
                        metadata?: Record<string, unknown> | undefined;
                        extensions?: string[] | undefined;
                        referenceTaskIds?: string[] | undefined;
                        taskId?: string | undefined;
                        contextId?: string | undefined;
                    } | undefined;
                    timestamp?: string | undefined;
                };
                kind: "task";
                history?: {
                    role: "user" | "agent";
                    parts: ({
                        kind: "text";
                        text: string;
                        metadata?: Record<string, unknown> | undefined;
                    } | {
                        kind: "file";
                        file: {
                            bytes: string;
                            name?: string | undefined;
                            mimeType?: string | undefined;
                            uri?: undefined;
                        } | {
                            uri: string;
                            name?: string | undefined;
                            mimeType?: string | undefined;
                            bytes?: undefined;
                        };
                        metadata?: Record<string, unknown> | undefined;
                    } | {
                        kind: "data";
                        data: Record<string, unknown>;
                        metadata?: Record<string, unknown> | undefined;
                    })[];
                    messageId: string;
                    kind: "message";
                    metadata?: Record<string, unknown> | undefined;
                    extensions?: string[] | undefined;
                    referenceTaskIds?: string[] | undefined;
                    taskId?: string | undefined;
                    contextId?: string | undefined;
                }[] | undefined;
                artifacts?: {
                    artifactId: string;
                    parts: ({
                        kind: "text";
                        text: string;
                        metadata?: Record<string, unknown> | undefined;
                    } | {
                        kind: "file";
                        file: {
                            bytes: string;
                            name?: string | undefined;
                            mimeType?: string | undefined;
                            uri?: undefined;
                        } | {
                            uri: string;
                            name?: string | undefined;
                            mimeType?: string | undefined;
                            bytes?: undefined;
                        };
                        metadata?: Record<string, unknown> | undefined;
                    } | {
                        kind: "data";
                        data: Record<string, unknown>;
                        metadata?: Record<string, unknown> | undefined;
                    })[];
                    name?: string | undefined;
                    description?: string | undefined;
                    metadata?: Record<string, unknown> | undefined;
                    extension?: string[] | undefined;
                }[] | undefined;
                metadata?: Record<string, unknown> | undefined;
            } | {
                taskId: string;
                contextId: string;
                kind: "status-update";
                status: {
                    state: "unknown" | "submitted" | "working" | "input-required" | "completed" | "canceled" | "failed" | "rejected" | "auth-required";
                    message?: {
                        role: "user" | "agent";
                        parts: ({
                            kind: "text";
                            text: string;
                            metadata?: Record<string, unknown> | undefined;
                        } | {
                            kind: "file";
                            file: {
                                bytes: string;
                                name?: string | undefined;
                                mimeType?: string | undefined;
                                uri?: undefined;
                            } | {
                                uri: string;
                                name?: string | undefined;
                                mimeType?: string | undefined;
                                bytes?: undefined;
                            };
                            metadata?: Record<string, unknown> | undefined;
                        } | {
                            kind: "data";
                            data: Record<string, unknown>;
                            metadata?: Record<string, unknown> | undefined;
                        })[];
                        messageId: string;
                        kind: "message";
                        metadata?: Record<string, unknown> | undefined;
                        extensions?: string[] | undefined;
                        referenceTaskIds?: string[] | undefined;
                        taskId?: string | undefined;
                        contextId?: string | undefined;
                    } | undefined;
                    timestamp?: string | undefined;
                };
                final: boolean;
                metadata?: Record<string, unknown> | undefined;
            } | {
                taskId: string;
                contextId: string;
                kind: "artifact-update";
                artifact: {
                    artifactId: string;
                    parts: ({
                        kind: "text";
                        text: string;
                        metadata?: Record<string, unknown> | undefined;
                    } | {
                        kind: "file";
                        file: {
                            bytes: string;
                            name?: string | undefined;
                            mimeType?: string | undefined;
                            uri?: undefined;
                        } | {
                            uri: string;
                            name?: string | undefined;
                            mimeType?: string | undefined;
                            bytes?: undefined;
                        };
                        metadata?: Record<string, unknown> | undefined;
                    } | {
                        kind: "data";
                        data: Record<string, unknown>;
                        metadata?: Record<string, unknown> | undefined;
                    })[];
                    name?: string | undefined;
                    description?: string | undefined;
                    metadata?: Record<string, unknown> | undefined;
                    extension?: string[] | undefined;
                };
                append?: boolean | undefined;
                lastChunk?: boolean | undefined;
                metadata?: Record<string, unknown> | undefined;
            }, void, unknown>;
            meta: object;
        }>;
        get: import("@trpc/server").TRPCQueryProcedure<{
            input: {
                id: string;
                metadata?: Record<string, unknown> | undefined;
            };
            output: {
                id: string;
                contextId: string;
                status: {
                    state: "unknown" | "submitted" | "working" | "input-required" | "completed" | "canceled" | "failed" | "rejected" | "auth-required";
                    message?: {
                        role: "user" | "agent";
                        parts: ({
                            kind: "text";
                            text: string;
                            metadata?: Record<string, unknown> | undefined;
                        } | {
                            kind: "file";
                            file: {
                                bytes: string;
                                name?: string | undefined;
                                mimeType?: string | undefined;
                                uri?: undefined;
                            } | {
                                uri: string;
                                name?: string | undefined;
                                mimeType?: string | undefined;
                                bytes?: undefined;
                            };
                            metadata?: Record<string, unknown> | undefined;
                        } | {
                            kind: "data";
                            data: Record<string, unknown>;
                            metadata?: Record<string, unknown> | undefined;
                        })[];
                        messageId: string;
                        kind: "message";
                        metadata?: Record<string, unknown> | undefined;
                        extensions?: string[] | undefined;
                        referenceTaskIds?: string[] | undefined;
                        taskId?: string | undefined;
                        contextId?: string | undefined;
                    } | undefined;
                    timestamp?: string | undefined;
                };
                kind: "task";
                history?: {
                    role: "user" | "agent";
                    parts: ({
                        kind: "text";
                        text: string;
                        metadata?: Record<string, unknown> | undefined;
                    } | {
                        kind: "file";
                        file: {
                            bytes: string;
                            name?: string | undefined;
                            mimeType?: string | undefined;
                            uri?: undefined;
                        } | {
                            uri: string;
                            name?: string | undefined;
                            mimeType?: string | undefined;
                            bytes?: undefined;
                        };
                        metadata?: Record<string, unknown> | undefined;
                    } | {
                        kind: "data";
                        data: Record<string, unknown>;
                        metadata?: Record<string, unknown> | undefined;
                    })[];
                    messageId: string;
                    kind: "message";
                    metadata?: Record<string, unknown> | undefined;
                    extensions?: string[] | undefined;
                    referenceTaskIds?: string[] | undefined;
                    taskId?: string | undefined;
                    contextId?: string | undefined;
                }[] | undefined;
                artifacts?: {
                    artifactId: string;
                    parts: ({
                        kind: "text";
                        text: string;
                        metadata?: Record<string, unknown> | undefined;
                    } | {
                        kind: "file";
                        file: {
                            bytes: string;
                            name?: string | undefined;
                            mimeType?: string | undefined;
                            uri?: undefined;
                        } | {
                            uri: string;
                            name?: string | undefined;
                            mimeType?: string | undefined;
                            bytes?: undefined;
                        };
                        metadata?: Record<string, unknown> | undefined;
                    } | {
                        kind: "data";
                        data: Record<string, unknown>;
                        metadata?: Record<string, unknown> | undefined;
                    })[];
                    name?: string | undefined;
                    description?: string | undefined;
                    metadata?: Record<string, unknown> | undefined;
                    extension?: string[] | undefined;
                }[] | undefined;
                metadata?: Record<string, unknown> | undefined;
            };
            meta: object;
        }>;
        cancel: import("@trpc/server").TRPCMutationProcedure<{
            input: {
                id: string;
                metadata?: Record<string, unknown> | undefined;
            };
            output: {
                id: string;
                contextId: string;
                status: {
                    state: "unknown" | "submitted" | "working" | "input-required" | "completed" | "canceled" | "failed" | "rejected" | "auth-required";
                    message?: {
                        role: "user" | "agent";
                        parts: ({
                            kind: "text";
                            text: string;
                            metadata?: Record<string, unknown> | undefined;
                        } | {
                            kind: "file";
                            file: {
                                bytes: string;
                                name?: string | undefined;
                                mimeType?: string | undefined;
                                uri?: undefined;
                            } | {
                                uri: string;
                                name?: string | undefined;
                                mimeType?: string | undefined;
                                bytes?: undefined;
                            };
                            metadata?: Record<string, unknown> | undefined;
                        } | {
                            kind: "data";
                            data: Record<string, unknown>;
                            metadata?: Record<string, unknown> | undefined;
                        })[];
                        messageId: string;
                        kind: "message";
                        metadata?: Record<string, unknown> | undefined;
                        extensions?: string[] | undefined;
                        referenceTaskIds?: string[] | undefined;
                        taskId?: string | undefined;
                        contextId?: string | undefined;
                    } | undefined;
                    timestamp?: string | undefined;
                };
                kind: "task";
                history?: {
                    role: "user" | "agent";
                    parts: ({
                        kind: "text";
                        text: string;
                        metadata?: Record<string, unknown> | undefined;
                    } | {
                        kind: "file";
                        file: {
                            bytes: string;
                            name?: string | undefined;
                            mimeType?: string | undefined;
                            uri?: undefined;
                        } | {
                            uri: string;
                            name?: string | undefined;
                            mimeType?: string | undefined;
                            bytes?: undefined;
                        };
                        metadata?: Record<string, unknown> | undefined;
                    } | {
                        kind: "data";
                        data: Record<string, unknown>;
                        metadata?: Record<string, unknown> | undefined;
                    })[];
                    messageId: string;
                    kind: "message";
                    metadata?: Record<string, unknown> | undefined;
                    extensions?: string[] | undefined;
                    referenceTaskIds?: string[] | undefined;
                    taskId?: string | undefined;
                    contextId?: string | undefined;
                }[] | undefined;
                artifacts?: {
                    artifactId: string;
                    parts: ({
                        kind: "text";
                        text: string;
                        metadata?: Record<string, unknown> | undefined;
                    } | {
                        kind: "file";
                        file: {
                            bytes: string;
                            name?: string | undefined;
                            mimeType?: string | undefined;
                            uri?: undefined;
                        } | {
                            uri: string;
                            name?: string | undefined;
                            mimeType?: string | undefined;
                            bytes?: undefined;
                        };
                        metadata?: Record<string, unknown> | undefined;
                    } | {
                        kind: "data";
                        data: Record<string, unknown>;
                        metadata?: Record<string, unknown> | undefined;
                    })[];
                    name?: string | undefined;
                    description?: string | undefined;
                    metadata?: Record<string, unknown> | undefined;
                    extension?: string[] | undefined;
                }[] | undefined;
                metadata?: Record<string, unknown> | undefined;
            };
            meta: object;
        }>;
        pushNotificationConfig: import("@trpc/server").TRPCBuiltRouter<{
            ctx: import("../trpc.js").A2AEnv;
            meta: object;
            errorShape: import("@trpc/server").TRPCDefaultErrorShape;
            transformer: false;
        }, import("@trpc/server").TRPCDecorateCreateRouterOptions<{
            set: import("@trpc/server").TRPCMutationProcedure<{
                input: {
                    taskId: string;
                    pushNotificationConfig: {
                        url: string;
                        id?: string | undefined;
                        token?: string | undefined;
                        authentication?: {
                            schemes: string[];
                            credentials?: string | undefined;
                        } | undefined;
                    };
                };
                output: {
                    taskId: string;
                    pushNotificationConfig: {
                        url: string;
                        id?: string | undefined;
                        token?: string | undefined;
                        authentication?: {
                            schemes: string[];
                            credentials?: string | undefined;
                        } | undefined;
                    };
                };
                meta: object;
            }>;
            get: import("@trpc/server").TRPCQueryProcedure<{
                input: {
                    id: string;
                    metadata?: Record<string, unknown> | undefined;
                    pushNotificationConfigId?: string | undefined;
                } | {
                    id: string;
                    metadata?: Record<string, unknown> | undefined;
                };
                output: {
                    taskId: string;
                    pushNotificationConfig: {
                        url: string;
                        id?: string | undefined;
                        token?: string | undefined;
                        authentication?: {
                            schemes: string[];
                            credentials?: string | undefined;
                        } | undefined;
                    };
                };
                meta: object;
            }>;
            list: import("@trpc/server").TRPCQueryProcedure<{
                input: {
                    id: string;
                    metadata?: Record<string, unknown> | undefined;
                };
                output: {
                    taskId: string;
                    pushNotificationConfig: {
                        url: string;
                        id?: string | undefined;
                        token?: string | undefined;
                        authentication?: {
                            schemes: string[];
                            credentials?: string | undefined;
                        } | undefined;
                    };
                }[];
                meta: object;
            }>;
            delete: import("@trpc/server").TRPCMutationProcedure<{
                input: {
                    id: string;
                    pushNotificationConfigId: string;
                    metadata?: Record<string, unknown> | undefined;
                };
                output: null;
                meta: object;
            }>;
        }>>;
    }>>;
}>>;
export type AgentRouter = A2ARouter;