Genkit JS API reference
    Preparing search index...

    Interface ResourceAction

    A resource action.

    interface ResourceAction {
        __action: ActionMetadata<
            z.ZodObject<
                { uri: z.ZodString },
                "strip",
                z.ZodTypeAny,
                { uri: string },
                { uri: string },
            >,
            z.ZodObject<
                {
                    content: z.ZodArray<
                        z.ZodUnion<
                            [
                                z.ZodObject<
                                    {
                                        custom: z.ZodOptional<z.ZodRecord<(...), (...)>>;
                                        data: z.ZodOptional<z.ZodUnknown>;
                                        media: z.ZodOptional<z.ZodNever>;
                                        metadata: z.ZodOptional<z.ZodRecord<(...), (...)>>;
                                        reasoning: z.ZodOptional<z.ZodNever>;
                                        resource: z.ZodOptional<z.ZodNever>;
                                        toolRequest: z.ZodOptional<z.ZodNever>;
                                        toolResponse: z.ZodOptional<z.ZodNever>;
                                    } & { text: z.ZodString },
                                    "strip",
                                    z.ZodTypeAny,
                                    {
                                        custom?: Record<string, unknown>;
                                        data?: unknown;
                                        media?: undefined;
                                        metadata?: Record<string, unknown>;
                                        reasoning?: undefined;
                                        resource?: undefined;
                                        text: string;
                                        toolRequest?: undefined;
                                        toolResponse?: undefined;
                                    },
                                    {
                                        custom?: Record<string, unknown>;
                                        data?: unknown;
                                        media?: undefined;
                                        metadata?: Record<string, unknown>;
                                        reasoning?: undefined;
                                        resource?: undefined;
                                        text: string;
                                        toolRequest?: undefined;
                                        toolResponse?: undefined;
                                    },
                                >,
                                z.ZodObject<
                                    {
                                        custom: z.ZodOptional<z.ZodRecord<(...), (...)>>;
                                        data: z.ZodOptional<z.ZodUnknown>;
                                        metadata: z.ZodOptional<z.ZodRecord<(...), (...)>>;
                                        reasoning: z.ZodOptional<z.ZodNever>;
                                        resource: z.ZodOptional<z.ZodNever>;
                                        text: z.ZodOptional<z.ZodNever>;
                                        toolRequest: z.ZodOptional<z.ZodNever>;
                                        toolResponse: z.ZodOptional<z.ZodNever>;
                                    } & {
                                        media: z.ZodObject<
                                            { contentType: ...; url: ... },
                                            "strip",
                                            z.ZodTypeAny,
                                            { contentType?: ...; url: ... },
                                            { contentType?: ...; url: ... },
                                        >;
                                    },
                                    "strip",
                                    z.ZodTypeAny,
                                    {
                                        custom?: Record<string, unknown>;
                                        data?: unknown;
                                        media: { contentType?: string; url: string };
                                        metadata?: Record<string, unknown>;
                                        reasoning?: undefined;
                                        resource?: undefined;
                                        text?: undefined;
                                        toolRequest?: undefined;
                                        toolResponse?: undefined;
                                    },
                                    {
                                        custom?: Record<string, unknown>;
                                        data?: unknown;
                                        media: { contentType?: string; url: string };
                                        metadata?: Record<string, unknown>;
                                        reasoning?: undefined;
                                        resource?: undefined;
                                        text?: undefined;
                                        toolRequest?: undefined;
                                        toolResponse?: undefined;
                                    },
                                >,
                                z.ZodObject<
                                    {
                                        custom: z.ZodOptional<z.ZodRecord<(...), (...)>>;
                                        data: z.ZodOptional<z.ZodUnknown>;
                                        media: z.ZodOptional<z.ZodNever>;
                                        metadata: z.ZodOptional<z.ZodRecord<(...), (...)>>;
                                        reasoning: z.ZodOptional<z.ZodNever>;
                                        resource: z.ZodOptional<z.ZodNever>;
                                        text: z.ZodOptional<z.ZodNever>;
                                        toolResponse: z.ZodOptional<z.ZodNever>;
                                    } & {
                                        toolRequest: z.ZodObject<
                                            { input: ...; name: ...; partial: ...; ref: ... },
                                            "strip",
                                            z.ZodTypeAny,
                                            { input?: ...; name: ...; partial?: ...; ref?: ... },
                                            { input?: ...; name: ...; partial?: ...; ref?: ... },
                                        >;
                                    },
                                    "strip",
                                    z.ZodTypeAny,
                                    {
                                        custom?: Record<string, unknown>;
                                        data?: unknown;
                                        media?: undefined;
                                        metadata?: Record<string, unknown>;
                                        reasoning?: undefined;
                                        resource?: undefined;
                                        text?: undefined;
                                        toolRequest: {
                                            input?: unknown;
                                            name: string;
                                            partial?: boolean;
                                            ref?: string;
                                        };
                                        toolResponse?: undefined;
                                    },
                                    {
                                        custom?: Record<string, unknown>;
                                        data?: unknown;
                                        media?: undefined;
                                        metadata?: Record<string, unknown>;
                                        reasoning?: undefined;
                                        resource?: undefined;
                                        text?: undefined;
                                        toolRequest: {
                                            input?: unknown;
                                            name: string;
                                            partial?: boolean;
                                            ref?: string;
                                        };
                                        toolResponse?: undefined;
                                    },
                                >,
                            ],
                        >,
                        "many",
                    >;
                },
                "strip",
                z.ZodTypeAny,
                {
                    content: (
                        | {
                            custom?: Record<string, unknown>;
                            data?: unknown;
                            media?: undefined;
                            metadata?: Record<string, unknown>;
                            reasoning?: undefined;
                            resource?: undefined;
                            text: string;
                            toolRequest?: undefined;
                            toolResponse?: undefined;
                        }
                        | {
                            custom?: Record<string, unknown>;
                            data?: unknown;
                            media: { contentType?: string; url: string };
                            metadata?: Record<string, unknown>;
                            reasoning?: undefined;
                            resource?: undefined;
                            text?: undefined;
                            toolRequest?: undefined;
                            toolResponse?: undefined;
                        }
                        | {
                            custom?: Record<string, unknown>;
                            data?: unknown;
                            media?: undefined;
                            metadata?: Record<string, unknown>;
                            reasoning?: undefined;
                            resource?: undefined;
                            text?: undefined;
                            toolRequest: {
                                input?: unknown;
                                name: string;
                                partial?: boolean;
                                ref?: string;
                            };
                            toolResponse?: undefined;
                        }
                        | {
                            custom?: Record<string, unknown>;
                            data?: unknown;
                            media?: undefined;
                            metadata?: Record<string, unknown>;
                            reasoning?: undefined;
                            resource?: undefined;
                            text?: undefined;
                            toolRequest?: undefined;
                            toolResponse: { name: string; output?: unknown; ref?: string } & {
                                content?: (
                                    (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                )[];
                            };
                        }
                        | {
                            custom?: Record<string, unknown>;
                            data?: unknown;
                            media?: undefined;
                            metadata?: Record<string, unknown>;
                            reasoning?: undefined;
                            resource?: undefined;
                            text?: undefined;
                            toolRequest?: undefined;
                            toolResponse?: undefined;
                        }
                        | {
                            custom: Record<string, any>;
                            data?: unknown;
                            media?: undefined;
                            metadata?: Record<string, unknown>;
                            reasoning?: undefined;
                            resource?: undefined;
                            text?: undefined;
                            toolRequest?: undefined;
                            toolResponse?: undefined;
                        }
                        | {
                            custom?: Record<string, unknown>;
                            data?: unknown;
                            media?: undefined;
                            metadata?: Record<string, unknown>;
                            reasoning: string;
                            resource?: undefined;
                            text?: undefined;
                            toolRequest?: undefined;
                            toolResponse?: undefined;
                        }
                        | {
                            custom?: Record<string, unknown>;
                            data?: unknown;
                            media?: undefined;
                            metadata?: Record<string, unknown>;
                            reasoning?: undefined;
                            resource: { uri: string };
                            text?: undefined;
                            toolRequest?: undefined;
                            toolResponse?: undefined;
                        }
                    )[];
                },
                {
                    content: (
                        | {
                            custom?: Record<string, unknown>;
                            data?: unknown;
                            media?: undefined;
                            metadata?: Record<string, unknown>;
                            reasoning?: undefined;
                            resource?: undefined;
                            text: string;
                            toolRequest?: undefined;
                            toolResponse?: undefined;
                        }
                        | {
                            custom?: Record<string, unknown>;
                            data?: unknown;
                            media: { contentType?: string; url: string };
                            metadata?: Record<string, unknown>;
                            reasoning?: undefined;
                            resource?: undefined;
                            text?: undefined;
                            toolRequest?: undefined;
                            toolResponse?: undefined;
                        }
                        | {
                            custom?: Record<string, unknown>;
                            data?: unknown;
                            media?: undefined;
                            metadata?: Record<string, unknown>;
                            reasoning?: undefined;
                            resource?: undefined;
                            text?: undefined;
                            toolRequest: {
                                input?: unknown;
                                name: string;
                                partial?: boolean;
                                ref?: string;
                            };
                            toolResponse?: undefined;
                        }
                        | {
                            custom?: Record<string, unknown>;
                            data?: unknown;
                            media?: undefined;
                            metadata?: Record<string, unknown>;
                            reasoning?: undefined;
                            resource?: undefined;
                            text?: undefined;
                            toolRequest?: undefined;
                            toolResponse: { name: string; output?: unknown; ref?: string } & {
                                content?: (
                                    (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                )[];
                            };
                        }
                        | {
                            custom?: Record<string, unknown>;
                            data?: unknown;
                            media?: undefined;
                            metadata?: Record<string, unknown>;
                            reasoning?: undefined;
                            resource?: undefined;
                            text?: undefined;
                            toolRequest?: undefined;
                            toolResponse?: undefined;
                        }
                        | {
                            custom: Record<string, any>;
                            data?: unknown;
                            media?: undefined;
                            metadata?: Record<string, unknown>;
                            reasoning?: undefined;
                            resource?: undefined;
                            text?: undefined;
                            toolRequest?: undefined;
                            toolResponse?: undefined;
                        }
                        | {
                            custom?: Record<string, unknown>;
                            data?: unknown;
                            media?: undefined;
                            metadata?: Record<string, unknown>;
                            reasoning: string;
                            resource?: undefined;
                            text?: undefined;
                            toolRequest?: undefined;
                            toolResponse?: undefined;
                        }
                        | {
                            custom?: Record<string, unknown>;
                            data?: unknown;
                            media?: undefined;
                            metadata?: Record<string, unknown>;
                            reasoning?: undefined;
                            resource: { uri: string };
                            text?: undefined;
                            toolRequest?: undefined;
                            toolResponse?: undefined;
                        }
                    )[];
                },
            >,
            z.ZodTypeAny,
        >;
        __registry?: Registry;
        matches(input: { uri: string }): boolean;
        run(
            input?: { uri: string },
            options?: ActionRunOptions<any>,
        ): Promise<
            ActionResult<
                {
                    content: (
                        | {
                            custom?: Record<string, unknown>;
                            data?: unknown;
                            media?: undefined;
                            metadata?: Record<string, unknown>;
                            reasoning?: undefined;
                            resource?: undefined;
                            text: string;
                            toolRequest?: undefined;
                            toolResponse?: undefined;
                        }
                        | {
                            custom?: Record<string, unknown>;
                            data?: unknown;
                            media: { contentType?: string; url: string };
                            metadata?: Record<string, unknown>;
                            reasoning?: undefined;
                            resource?: undefined;
                            text?: undefined;
                            toolRequest?: undefined;
                            toolResponse?: undefined;
                        }
                        | {
                            custom?: Record<string, unknown>;
                            data?: unknown;
                            media?: undefined;
                            metadata?: Record<string, unknown>;
                            reasoning?: undefined;
                            resource?: undefined;
                            text?: undefined;
                            toolRequest: {
                                input?: unknown;
                                name: string;
                                partial?: boolean;
                                ref?: string;
                            };
                            toolResponse?: undefined;
                        }
                        | {
                            custom?: Record<string, unknown>;
                            data?: unknown;
                            media?: undefined;
                            metadata?: Record<string, unknown>;
                            reasoning?: undefined;
                            resource?: undefined;
                            text?: undefined;
                            toolRequest?: undefined;
                            toolResponse: { name: string; output?: unknown; ref?: string } & {
                                content?: (
                                    (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                )[];
                            };
                        }
                        | {
                            custom?: Record<string, unknown>;
                            data?: unknown;
                            media?: undefined;
                            metadata?: Record<string, unknown>;
                            reasoning?: undefined;
                            resource?: undefined;
                            text?: undefined;
                            toolRequest?: undefined;
                            toolResponse?: undefined;
                        }
                        | {
                            custom: Record<string, any>;
                            data?: unknown;
                            media?: undefined;
                            metadata?: Record<string, unknown>;
                            reasoning?: undefined;
                            resource?: undefined;
                            text?: undefined;
                            toolRequest?: undefined;
                            toolResponse?: undefined;
                        }
                        | {
                            custom?: Record<string, unknown>;
                            data?: unknown;
                            media?: undefined;
                            metadata?: Record<string, unknown>;
                            reasoning: string;
                            resource?: undefined;
                            text?: undefined;
                            toolRequest?: undefined;
                            toolResponse?: undefined;
                        }
                        | {
                            custom?: Record<string, unknown>;
                            data?: unknown;
                            media?: undefined;
                            metadata?: Record<string, unknown>;
                            reasoning?: undefined;
                            resource: { uri: string };
                            text?: undefined;
                            toolRequest?: undefined;
                            toolResponse?: undefined;
                        }
                    )[];
                },
            >,
        >;
        stream(
            input?: { uri: string },
            opts?: ActionRunOptions<any>,
        ): StreamingResponse<
            z.ZodObject<
                {
                    content: z.ZodArray<
                        z.ZodUnion<
                            [
                                z.ZodObject<
                                    {
                                        custom: z.ZodOptional<z.ZodRecord<(...), (...)>>;
                                        data: z.ZodOptional<z.ZodUnknown>;
                                        media: z.ZodOptional<z.ZodNever>;
                                        metadata: z.ZodOptional<z.ZodRecord<(...), (...)>>;
                                        reasoning: z.ZodOptional<z.ZodNever>;
                                        resource: z.ZodOptional<z.ZodNever>;
                                        toolRequest: z.ZodOptional<z.ZodNever>;
                                        toolResponse: z.ZodOptional<z.ZodNever>;
                                    } & { text: z.ZodString },
                                    "strip",
                                    z.ZodTypeAny,
                                    {
                                        custom?: Record<string, unknown>;
                                        data?: unknown;
                                        media?: undefined;
                                        metadata?: Record<string, unknown>;
                                        reasoning?: undefined;
                                        resource?: undefined;
                                        text: string;
                                        toolRequest?: undefined;
                                        toolResponse?: undefined;
                                    },
                                    {
                                        custom?: Record<string, unknown>;
                                        data?: unknown;
                                        media?: undefined;
                                        metadata?: Record<string, unknown>;
                                        reasoning?: undefined;
                                        resource?: undefined;
                                        text: string;
                                        toolRequest?: undefined;
                                        toolResponse?: undefined;
                                    },
                                >,
                                z.ZodObject<
                                    {
                                        custom: z.ZodOptional<z.ZodRecord<(...), (...)>>;
                                        data: z.ZodOptional<z.ZodUnknown>;
                                        metadata: z.ZodOptional<z.ZodRecord<(...), (...)>>;
                                        reasoning: z.ZodOptional<z.ZodNever>;
                                        resource: z.ZodOptional<z.ZodNever>;
                                        text: z.ZodOptional<z.ZodNever>;
                                        toolRequest: z.ZodOptional<z.ZodNever>;
                                        toolResponse: z.ZodOptional<z.ZodNever>;
                                    } & {
                                        media: z.ZodObject<
                                            { contentType: ...; url: ... },
                                            "strip",
                                            z.ZodTypeAny,
                                            { contentType?: ...; url: ... },
                                            { contentType?: ...; url: ... },
                                        >;
                                    },
                                    "strip",
                                    z.ZodTypeAny,
                                    {
                                        custom?: Record<string, unknown>;
                                        data?: unknown;
                                        media: { contentType?: string; url: string };
                                        metadata?: Record<string, unknown>;
                                        reasoning?: undefined;
                                        resource?: undefined;
                                        text?: undefined;
                                        toolRequest?: undefined;
                                        toolResponse?: undefined;
                                    },
                                    {
                                        custom?: Record<string, unknown>;
                                        data?: unknown;
                                        media: { contentType?: string; url: string };
                                        metadata?: Record<string, unknown>;
                                        reasoning?: undefined;
                                        resource?: undefined;
                                        text?: undefined;
                                        toolRequest?: undefined;
                                        toolResponse?: undefined;
                                    },
                                >,
                                z.ZodObject<
                                    {
                                        custom: z.ZodOptional<z.ZodRecord<(...), (...)>>;
                                        data: z.ZodOptional<z.ZodUnknown>;
                                        media: z.ZodOptional<z.ZodNever>;
                                        metadata: z.ZodOptional<z.ZodRecord<(...), (...)>>;
                                        reasoning: z.ZodOptional<z.ZodNever>;
                                        resource: z.ZodOptional<z.ZodNever>;
                                        text: z.ZodOptional<z.ZodNever>;
                                        toolResponse: z.ZodOptional<z.ZodNever>;
                                    } & {
                                        toolRequest: z.ZodObject<
                                            { input: ...; name: ...; partial: ...; ref: ... },
                                            "strip",
                                            z.ZodTypeAny,
                                            { input?: ...; name: ...; partial?: ...; ref?: ... },
                                            { input?: ...; name: ...; partial?: ...; ref?: ... },
                                        >;
                                    },
                                    "strip",
                                    z.ZodTypeAny,
                                    {
                                        custom?: Record<string, unknown>;
                                        data?: unknown;
                                        media?: undefined;
                                        metadata?: Record<string, unknown>;
                                        reasoning?: undefined;
                                        resource?: undefined;
                                        text?: undefined;
                                        toolRequest: {
                                            input?: unknown;
                                            name: string;
                                            partial?: boolean;
                                            ref?: string;
                                        };
                                        toolResponse?: undefined;
                                    },
                                    {
                                        custom?: Record<string, unknown>;
                                        data?: unknown;
                                        media?: undefined;
                                        metadata?: Record<string, unknown>;
                                        reasoning?: undefined;
                                        resource?: undefined;
                                        text?: undefined;
                                        toolRequest: {
                                            input?: unknown;
                                            name: string;
                                            partial?: boolean;
                                            ref?: string;
                                        };
                                        toolResponse?: undefined;
                                    },
                                >,
                            ],
                        >,
                        "many",
                    >;
                },
                "strip",
                z.ZodTypeAny,
                {
                    content: (
                        | {
                            custom?: Record<string, unknown>;
                            data?: unknown;
                            media?: undefined;
                            metadata?: Record<string, unknown>;
                            reasoning?: undefined;
                            resource?: undefined;
                            text: string;
                            toolRequest?: undefined;
                            toolResponse?: undefined;
                        }
                        | {
                            custom?: Record<string, unknown>;
                            data?: unknown;
                            media: { contentType?: string; url: string };
                            metadata?: Record<string, unknown>;
                            reasoning?: undefined;
                            resource?: undefined;
                            text?: undefined;
                            toolRequest?: undefined;
                            toolResponse?: undefined;
                        }
                        | {
                            custom?: Record<string, unknown>;
                            data?: unknown;
                            media?: undefined;
                            metadata?: Record<string, unknown>;
                            reasoning?: undefined;
                            resource?: undefined;
                            text?: undefined;
                            toolRequest: {
                                input?: unknown;
                                name: string;
                                partial?: boolean;
                                ref?: string;
                            };
                            toolResponse?: undefined;
                        }
                        | {
                            custom?: Record<string, unknown>;
                            data?: unknown;
                            media?: undefined;
                            metadata?: Record<string, unknown>;
                            reasoning?: undefined;
                            resource?: undefined;
                            text?: undefined;
                            toolRequest?: undefined;
                            toolResponse: { name: string; output?: unknown; ref?: string } & {
                                content?: (
                                    (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                )[];
                            };
                        }
                        | {
                            custom?: Record<string, unknown>;
                            data?: unknown;
                            media?: undefined;
                            metadata?: Record<string, unknown>;
                            reasoning?: undefined;
                            resource?: undefined;
                            text?: undefined;
                            toolRequest?: undefined;
                            toolResponse?: undefined;
                        }
                        | {
                            custom: Record<string, any>;
                            data?: unknown;
                            media?: undefined;
                            metadata?: Record<string, unknown>;
                            reasoning?: undefined;
                            resource?: undefined;
                            text?: undefined;
                            toolRequest?: undefined;
                            toolResponse?: undefined;
                        }
                        | {
                            custom?: Record<string, unknown>;
                            data?: unknown;
                            media?: undefined;
                            metadata?: Record<string, unknown>;
                            reasoning: string;
                            resource?: undefined;
                            text?: undefined;
                            toolRequest?: undefined;
                            toolResponse?: undefined;
                        }
                        | {
                            custom?: Record<string, unknown>;
                            data?: unknown;
                            media?: undefined;
                            metadata?: Record<string, unknown>;
                            reasoning?: undefined;
                            resource: { uri: string };
                            text?: undefined;
                            toolRequest?: undefined;
                            toolResponse?: undefined;
                        }
                    )[];
                },
                {
                    content: (
                        | {
                            custom?: Record<string, unknown>;
                            data?: unknown;
                            media?: undefined;
                            metadata?: Record<string, unknown>;
                            reasoning?: undefined;
                            resource?: undefined;
                            text: string;
                            toolRequest?: undefined;
                            toolResponse?: undefined;
                        }
                        | {
                            custom?: Record<string, unknown>;
                            data?: unknown;
                            media: { contentType?: string; url: string };
                            metadata?: Record<string, unknown>;
                            reasoning?: undefined;
                            resource?: undefined;
                            text?: undefined;
                            toolRequest?: undefined;
                            toolResponse?: undefined;
                        }
                        | {
                            custom?: Record<string, unknown>;
                            data?: unknown;
                            media?: undefined;
                            metadata?: Record<string, unknown>;
                            reasoning?: undefined;
                            resource?: undefined;
                            text?: undefined;
                            toolRequest: {
                                input?: unknown;
                                name: string;
                                partial?: boolean;
                                ref?: string;
                            };
                            toolResponse?: undefined;
                        }
                        | {
                            custom?: Record<string, unknown>;
                            data?: unknown;
                            media?: undefined;
                            metadata?: Record<string, unknown>;
                            reasoning?: undefined;
                            resource?: undefined;
                            text?: undefined;
                            toolRequest?: undefined;
                            toolResponse: { name: string; output?: unknown; ref?: string } & {
                                content?: (
                                    (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                )[];
                            };
                        }
                        | {
                            custom?: Record<string, unknown>;
                            data?: unknown;
                            media?: undefined;
                            metadata?: Record<string, unknown>;
                            reasoning?: undefined;
                            resource?: undefined;
                            text?: undefined;
                            toolRequest?: undefined;
                            toolResponse?: undefined;
                        }
                        | {
                            custom: Record<string, any>;
                            data?: unknown;
                            media?: undefined;
                            metadata?: Record<string, unknown>;
                            reasoning?: undefined;
                            resource?: undefined;
                            text?: undefined;
                            toolRequest?: undefined;
                            toolResponse?: undefined;
                        }
                        | {
                            custom?: Record<string, unknown>;
                            data?: unknown;
                            media?: undefined;
                            metadata?: Record<string, unknown>;
                            reasoning: string;
                            resource?: undefined;
                            text?: undefined;
                            toolRequest?: undefined;
                            toolResponse?: undefined;
                        }
                        | {
                            custom?: Record<string, unknown>;
                            data?: unknown;
                            media?: undefined;
                            metadata?: Record<string, unknown>;
                            reasoning?: undefined;
                            resource: { uri: string };
                            text?: undefined;
                            toolRequest?: undefined;
                            toolResponse?: undefined;
                        }
                    )[];
                },
            >,
            z.ZodTypeAny,
        >;
        (
            input?: { uri: string },
            options?: ActionRunOptions<any>,
        ): Promise<
            {
                content: (
                    | {
                        custom?: Record<string, unknown>;
                        data?: unknown;
                        media?: undefined;
                        metadata?: Record<string, unknown>;
                        reasoning?: undefined;
                        resource?: undefined;
                        text: string;
                        toolRequest?: undefined;
                        toolResponse?: undefined;
                    }
                    | {
                        custom?: Record<string, unknown>;
                        data?: unknown;
                        media: { contentType?: string; url: string };
                        metadata?: Record<string, unknown>;
                        reasoning?: undefined;
                        resource?: undefined;
                        text?: undefined;
                        toolRequest?: undefined;
                        toolResponse?: undefined;
                    }
                    | {
                        custom?: Record<string, unknown>;
                        data?: unknown;
                        media?: undefined;
                        metadata?: Record<string, unknown>;
                        reasoning?: undefined;
                        resource?: undefined;
                        text?: undefined;
                        toolRequest: {
                            input?: unknown;
                            name: string;
                            partial?: boolean;
                            ref?: string;
                        };
                        toolResponse?: undefined;
                    }
                    | {
                        custom?: Record<string, unknown>;
                        data?: unknown;
                        media?: undefined;
                        metadata?: Record<string, unknown>;
                        reasoning?: undefined;
                        resource?: undefined;
                        text?: undefined;
                        toolRequest?: undefined;
                        toolResponse: { name: string; output?: unknown; ref?: string } & {
                            content?: (
                                | {
                                    custom?: ...;
                                    data?: ...;
                                    media?: ...;
                                    metadata?: ...;
                                    reasoning?: ...;
                                    resource?: ...;
                                    text: ...;
                                    toolRequest?: ...;
                                    toolResponse?: ...;
                                }
                                | {
                                    custom?: ...;
                                    data?: ...;
                                    media: ...;
                                    metadata?: ...;
                                    reasoning?: ...;
                                    resource?: ...;
                                    text?: ...;
                                    toolRequest?: ...;
                                    toolResponse?: ...;
                                }
                                | {
                                    custom?: ...;
                                    data?: ...;
                                    media?: ...;
                                    metadata?: ...;
                                    reasoning?: ...;
                                    resource?: ...;
                                    text?: ...;
                                    toolRequest: ...;
                                    toolResponse?: ...;
                                }
                                | {
                                    custom?: ...;
                                    data?: ...;
                                    media?: ...;
                                    metadata?: ...;
                                    reasoning?: ...;
                                    resource?: ...;
                                    text?: ...;
                                    toolRequest?: ...;
                                    toolResponse: ...;
                                }
                                | {
                                    custom?: ...;
                                    data?: ...;
                                    media?: ...;
                                    metadata?: ...;
                                    reasoning?: ...;
                                    resource?: ...;
                                    text?: ...;
                                    toolRequest?: ...;
                                    toolResponse?: ...;
                                }
                                | {
                                    custom: ...;
                                    data?: ...;
                                    media?: ...;
                                    metadata?: ...;
                                    reasoning?: ...;
                                    resource?: ...;
                                    text?: ...;
                                    toolRequest?: ...;
                                    toolResponse?: ...;
                                }
                                | {
                                    custom?: ...;
                                    data?: ...;
                                    media?: ...;
                                    metadata?: ...;
                                    reasoning: ...;
                                    resource?: ...;
                                    text?: ...;
                                    toolRequest?: ...;
                                    toolResponse?: ...;
                                }
                                | {
                                    custom?: ...;
                                    data?: ...;
                                    media?: ...;
                                    metadata?: ...;
                                    reasoning?: ...;
                                    resource: ...;
                                    text?: ...;
                                    toolRequest?: ...;
                                    toolResponse?: ...;
                                }
                            )[];
                        };
                    }
                    | {
                        custom?: Record<string, unknown>;
                        data?: unknown;
                        media?: undefined;
                        metadata?: Record<string, unknown>;
                        reasoning?: undefined;
                        resource?: undefined;
                        text?: undefined;
                        toolRequest?: undefined;
                        toolResponse?: undefined;
                    }
                    | {
                        custom: Record<string, any>;
                        data?: unknown;
                        media?: undefined;
                        metadata?: Record<string, unknown>;
                        reasoning?: undefined;
                        resource?: undefined;
                        text?: undefined;
                        toolRequest?: undefined;
                        toolResponse?: undefined;
                    }
                    | {
                        custom?: Record<string, unknown>;
                        data?: unknown;
                        media?: undefined;
                        metadata?: Record<string, unknown>;
                        reasoning: string;
                        resource?: undefined;
                        text?: undefined;
                        toolRequest?: undefined;
                        toolResponse?: undefined;
                    }
                    | {
                        custom?: Record<string, unknown>;
                        data?: unknown;
                        media?: undefined;
                        metadata?: Record<string, unknown>;
                        reasoning?: undefined;
                        resource: { uri: string };
                        text?: undefined;
                        toolRequest?: undefined;
                        toolResponse?: undefined;
                    }
                )[];
            },
        >;
    }

    Hierarchy (View Summary)

    • Action<typeof ResourceInputSchema, typeof ResourceOutputSchema>
      • ResourceAction
    • Parameters

      • Optionalinput: { uri: string }
      • Optionaloptions: ActionRunOptions<any>

      Returns Promise<
          {
              content: (
                  | {
                      custom?: Record<string, unknown>;
                      data?: unknown;
                      media?: undefined;
                      metadata?: Record<string, unknown>;
                      reasoning?: undefined;
                      resource?: undefined;
                      text: string;
                      toolRequest?: undefined;
                      toolResponse?: undefined;
                  }
                  | {
                      custom?: Record<string, unknown>;
                      data?: unknown;
                      media: { contentType?: string; url: string };
                      metadata?: Record<string, unknown>;
                      reasoning?: undefined;
                      resource?: undefined;
                      text?: undefined;
                      toolRequest?: undefined;
                      toolResponse?: undefined;
                  }
                  | {
                      custom?: Record<string, unknown>;
                      data?: unknown;
                      media?: undefined;
                      metadata?: Record<string, unknown>;
                      reasoning?: undefined;
                      resource?: undefined;
                      text?: undefined;
                      toolRequest: {
                          input?: unknown;
                          name: string;
                          partial?: boolean;
                          ref?: string;
                      };
                      toolResponse?: undefined;
                  }
                  | {
                      custom?: Record<string, unknown>;
                      data?: unknown;
                      media?: undefined;
                      metadata?: Record<string, unknown>;
                      reasoning?: undefined;
                      resource?: undefined;
                      text?: undefined;
                      toolRequest?: undefined;
                      toolResponse: { name: string; output?: unknown; ref?: string } & {
                          content?: (
                              | {
                                  custom?: ...;
                                  data?: ...;
                                  media?: ...;
                                  metadata?: ...;
                                  reasoning?: ...;
                                  resource?: ...;
                                  text: ...;
                                  toolRequest?: ...;
                                  toolResponse?: ...;
                              }
                              | {
                                  custom?: ...;
                                  data?: ...;
                                  media: ...;
                                  metadata?: ...;
                                  reasoning?: ...;
                                  resource?: ...;
                                  text?: ...;
                                  toolRequest?: ...;
                                  toolResponse?: ...;
                              }
                              | {
                                  custom?: ...;
                                  data?: ...;
                                  media?: ...;
                                  metadata?: ...;
                                  reasoning?: ...;
                                  resource?: ...;
                                  text?: ...;
                                  toolRequest: ...;
                                  toolResponse?: ...;
                              }
                              | {
                                  custom?: ...;
                                  data?: ...;
                                  media?: ...;
                                  metadata?: ...;
                                  reasoning?: ...;
                                  resource?: ...;
                                  text?: ...;
                                  toolRequest?: ...;
                                  toolResponse: ...;
                              }
                              | {
                                  custom?: ...;
                                  data?: ...;
                                  media?: ...;
                                  metadata?: ...;
                                  reasoning?: ...;
                                  resource?: ...;
                                  text?: ...;
                                  toolRequest?: ...;
                                  toolResponse?: ...;
                              }
                              | {
                                  custom: ...;
                                  data?: ...;
                                  media?: ...;
                                  metadata?: ...;
                                  reasoning?: ...;
                                  resource?: ...;
                                  text?: ...;
                                  toolRequest?: ...;
                                  toolResponse?: ...;
                              }
                              | {
                                  custom?: ...;
                                  data?: ...;
                                  media?: ...;
                                  metadata?: ...;
                                  reasoning: ...;
                                  resource?: ...;
                                  text?: ...;
                                  toolRequest?: ...;
                                  toolResponse?: ...;
                              }
                              | {
                                  custom?: ...;
                                  data?: ...;
                                  media?: ...;
                                  metadata?: ...;
                                  reasoning?: ...;
                                  resource: ...;
                                  text?: ...;
                                  toolRequest?: ...;
                                  toolResponse?: ...;
                              }
                          )[];
                      };
                  }
                  | {
                      custom?: Record<string, unknown>;
                      data?: unknown;
                      media?: undefined;
                      metadata?: Record<string, unknown>;
                      reasoning?: undefined;
                      resource?: undefined;
                      text?: undefined;
                      toolRequest?: undefined;
                      toolResponse?: undefined;
                  }
                  | {
                      custom: Record<string, any>;
                      data?: unknown;
                      media?: undefined;
                      metadata?: Record<string, unknown>;
                      reasoning?: undefined;
                      resource?: undefined;
                      text?: undefined;
                      toolRequest?: undefined;
                      toolResponse?: undefined;
                  }
                  | {
                      custom?: Record<string, unknown>;
                      data?: unknown;
                      media?: undefined;
                      metadata?: Record<string, unknown>;
                      reasoning: string;
                      resource?: undefined;
                      text?: undefined;
                      toolRequest?: undefined;
                      toolResponse?: undefined;
                  }
                  | {
                      custom?: Record<string, unknown>;
                      data?: unknown;
                      media?: undefined;
                      metadata?: Record<string, unknown>;
                      reasoning?: undefined;
                      resource: { uri: string };
                      text?: undefined;
                      toolRequest?: undefined;
                      toolResponse?: undefined;
                  }
              )[];
          },
      >

    Index

    Properties

    __action: ActionMetadata<
        z.ZodObject<
            { uri: z.ZodString },
            "strip",
            z.ZodTypeAny,
            { uri: string },
            { uri: string },
        >,
        z.ZodObject<
            {
                content: z.ZodArray<
                    z.ZodUnion<
                        [
                            z.ZodObject<
                                {
                                    custom: z.ZodOptional<z.ZodRecord<(...), (...)>>;
                                    data: z.ZodOptional<z.ZodUnknown>;
                                    media: z.ZodOptional<z.ZodNever>;
                                    metadata: z.ZodOptional<z.ZodRecord<(...), (...)>>;
                                    reasoning: z.ZodOptional<z.ZodNever>;
                                    resource: z.ZodOptional<z.ZodNever>;
                                    toolRequest: z.ZodOptional<z.ZodNever>;
                                    toolResponse: z.ZodOptional<z.ZodNever>;
                                } & { text: z.ZodString },
                                "strip",
                                z.ZodTypeAny,
                                {
                                    custom?: Record<string, unknown>;
                                    data?: unknown;
                                    media?: undefined;
                                    metadata?: Record<string, unknown>;
                                    reasoning?: undefined;
                                    resource?: undefined;
                                    text: string;
                                    toolRequest?: undefined;
                                    toolResponse?: undefined;
                                },
                                {
                                    custom?: Record<string, unknown>;
                                    data?: unknown;
                                    media?: undefined;
                                    metadata?: Record<string, unknown>;
                                    reasoning?: undefined;
                                    resource?: undefined;
                                    text: string;
                                    toolRequest?: undefined;
                                    toolResponse?: undefined;
                                },
                            >,
                            z.ZodObject<
                                {
                                    custom: z.ZodOptional<z.ZodRecord<(...), (...)>>;
                                    data: z.ZodOptional<z.ZodUnknown>;
                                    metadata: z.ZodOptional<z.ZodRecord<(...), (...)>>;
                                    reasoning: z.ZodOptional<z.ZodNever>;
                                    resource: z.ZodOptional<z.ZodNever>;
                                    text: z.ZodOptional<z.ZodNever>;
                                    toolRequest: z.ZodOptional<z.ZodNever>;
                                    toolResponse: z.ZodOptional<z.ZodNever>;
                                } & {
                                    media: z.ZodObject<
                                        { contentType: ...; url: ... },
                                        "strip",
                                        z.ZodTypeAny,
                                        { contentType?: ...; url: ... },
                                        { contentType?: ...; url: ... },
                                    >;
                                },
                                "strip",
                                z.ZodTypeAny,
                                {
                                    custom?: Record<string, unknown>;
                                    data?: unknown;
                                    media: { contentType?: string; url: string };
                                    metadata?: Record<string, unknown>;
                                    reasoning?: undefined;
                                    resource?: undefined;
                                    text?: undefined;
                                    toolRequest?: undefined;
                                    toolResponse?: undefined;
                                },
                                {
                                    custom?: Record<string, unknown>;
                                    data?: unknown;
                                    media: { contentType?: string; url: string };
                                    metadata?: Record<string, unknown>;
                                    reasoning?: undefined;
                                    resource?: undefined;
                                    text?: undefined;
                                    toolRequest?: undefined;
                                    toolResponse?: undefined;
                                },
                            >,
                            z.ZodObject<
                                {
                                    custom: z.ZodOptional<z.ZodRecord<(...), (...)>>;
                                    data: z.ZodOptional<z.ZodUnknown>;
                                    media: z.ZodOptional<z.ZodNever>;
                                    metadata: z.ZodOptional<z.ZodRecord<(...), (...)>>;
                                    reasoning: z.ZodOptional<z.ZodNever>;
                                    resource: z.ZodOptional<z.ZodNever>;
                                    text: z.ZodOptional<z.ZodNever>;
                                    toolResponse: z.ZodOptional<z.ZodNever>;
                                } & {
                                    toolRequest: z.ZodObject<
                                        { input: ...; name: ...; partial: ...; ref: ... },
                                        "strip",
                                        z.ZodTypeAny,
                                        { input?: ...; name: ...; partial?: ...; ref?: ... },
                                        { input?: ...; name: ...; partial?: ...; ref?: ... },
                                    >;
                                },
                                "strip",
                                z.ZodTypeAny,
                                {
                                    custom?: Record<string, unknown>;
                                    data?: unknown;
                                    media?: undefined;
                                    metadata?: Record<string, unknown>;
                                    reasoning?: undefined;
                                    resource?: undefined;
                                    text?: undefined;
                                    toolRequest: {
                                        input?: unknown;
                                        name: string;
                                        partial?: boolean;
                                        ref?: string;
                                    };
                                    toolResponse?: undefined;
                                },
                                {
                                    custom?: Record<string, unknown>;
                                    data?: unknown;
                                    media?: undefined;
                                    metadata?: Record<string, unknown>;
                                    reasoning?: undefined;
                                    resource?: undefined;
                                    text?: undefined;
                                    toolRequest: {
                                        input?: unknown;
                                        name: string;
                                        partial?: boolean;
                                        ref?: string;
                                    };
                                    toolResponse?: undefined;
                                },
                            >,
                        ],
                    >,
                    "many",
                >;
            },
            "strip",
            z.ZodTypeAny,
            {
                content: (
                    | {
                        custom?: Record<string, unknown>;
                        data?: unknown;
                        media?: undefined;
                        metadata?: Record<string, unknown>;
                        reasoning?: undefined;
                        resource?: undefined;
                        text: string;
                        toolRequest?: undefined;
                        toolResponse?: undefined;
                    }
                    | {
                        custom?: Record<string, unknown>;
                        data?: unknown;
                        media: { contentType?: string; url: string };
                        metadata?: Record<string, unknown>;
                        reasoning?: undefined;
                        resource?: undefined;
                        text?: undefined;
                        toolRequest?: undefined;
                        toolResponse?: undefined;
                    }
                    | {
                        custom?: Record<string, unknown>;
                        data?: unknown;
                        media?: undefined;
                        metadata?: Record<string, unknown>;
                        reasoning?: undefined;
                        resource?: undefined;
                        text?: undefined;
                        toolRequest: {
                            input?: unknown;
                            name: string;
                            partial?: boolean;
                            ref?: string;
                        };
                        toolResponse?: undefined;
                    }
                    | {
                        custom?: Record<string, unknown>;
                        data?: unknown;
                        media?: undefined;
                        metadata?: Record<string, unknown>;
                        reasoning?: undefined;
                        resource?: undefined;
                        text?: undefined;
                        toolRequest?: undefined;
                        toolResponse: { name: string; output?: unknown; ref?: string } & {
                            content?: (
                                (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                            )[];
                        };
                    }
                    | {
                        custom?: Record<string, unknown>;
                        data?: unknown;
                        media?: undefined;
                        metadata?: Record<string, unknown>;
                        reasoning?: undefined;
                        resource?: undefined;
                        text?: undefined;
                        toolRequest?: undefined;
                        toolResponse?: undefined;
                    }
                    | {
                        custom: Record<string, any>;
                        data?: unknown;
                        media?: undefined;
                        metadata?: Record<string, unknown>;
                        reasoning?: undefined;
                        resource?: undefined;
                        text?: undefined;
                        toolRequest?: undefined;
                        toolResponse?: undefined;
                    }
                    | {
                        custom?: Record<string, unknown>;
                        data?: unknown;
                        media?: undefined;
                        metadata?: Record<string, unknown>;
                        reasoning: string;
                        resource?: undefined;
                        text?: undefined;
                        toolRequest?: undefined;
                        toolResponse?: undefined;
                    }
                    | {
                        custom?: Record<string, unknown>;
                        data?: unknown;
                        media?: undefined;
                        metadata?: Record<string, unknown>;
                        reasoning?: undefined;
                        resource: { uri: string };
                        text?: undefined;
                        toolRequest?: undefined;
                        toolResponse?: undefined;
                    }
                )[];
            },
            {
                content: (
                    | {
                        custom?: Record<string, unknown>;
                        data?: unknown;
                        media?: undefined;
                        metadata?: Record<string, unknown>;
                        reasoning?: undefined;
                        resource?: undefined;
                        text: string;
                        toolRequest?: undefined;
                        toolResponse?: undefined;
                    }
                    | {
                        custom?: Record<string, unknown>;
                        data?: unknown;
                        media: { contentType?: string; url: string };
                        metadata?: Record<string, unknown>;
                        reasoning?: undefined;
                        resource?: undefined;
                        text?: undefined;
                        toolRequest?: undefined;
                        toolResponse?: undefined;
                    }
                    | {
                        custom?: Record<string, unknown>;
                        data?: unknown;
                        media?: undefined;
                        metadata?: Record<string, unknown>;
                        reasoning?: undefined;
                        resource?: undefined;
                        text?: undefined;
                        toolRequest: {
                            input?: unknown;
                            name: string;
                            partial?: boolean;
                            ref?: string;
                        };
                        toolResponse?: undefined;
                    }
                    | {
                        custom?: Record<string, unknown>;
                        data?: unknown;
                        media?: undefined;
                        metadata?: Record<string, unknown>;
                        reasoning?: undefined;
                        resource?: undefined;
                        text?: undefined;
                        toolRequest?: undefined;
                        toolResponse: { name: string; output?: unknown; ref?: string } & {
                            content?: (
                                (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                            )[];
                        };
                    }
                    | {
                        custom?: Record<string, unknown>;
                        data?: unknown;
                        media?: undefined;
                        metadata?: Record<string, unknown>;
                        reasoning?: undefined;
                        resource?: undefined;
                        text?: undefined;
                        toolRequest?: undefined;
                        toolResponse?: undefined;
                    }
                    | {
                        custom: Record<string, any>;
                        data?: unknown;
                        media?: undefined;
                        metadata?: Record<string, unknown>;
                        reasoning?: undefined;
                        resource?: undefined;
                        text?: undefined;
                        toolRequest?: undefined;
                        toolResponse?: undefined;
                    }
                    | {
                        custom?: Record<string, unknown>;
                        data?: unknown;
                        media?: undefined;
                        metadata?: Record<string, unknown>;
                        reasoning: string;
                        resource?: undefined;
                        text?: undefined;
                        toolRequest?: undefined;
                        toolResponse?: undefined;
                    }
                    | {
                        custom?: Record<string, unknown>;
                        data?: unknown;
                        media?: undefined;
                        metadata?: Record<string, unknown>;
                        reasoning?: undefined;
                        resource: { uri: string };
                        text?: undefined;
                        toolRequest?: undefined;
                        toolResponse?: undefined;
                    }
                )[];
            },
        >,
        z.ZodTypeAny,
    >
    __registry?: Registry

    Methods

    • Parameters

      • input: { uri: string }

      Returns boolean

    • Parameters

      • Optionalinput: { uri: string }
      • Optionaloptions: ActionRunOptions<any>

      Returns Promise<
          ActionResult<
              {
                  content: (
                      | {
                          custom?: Record<string, unknown>;
                          data?: unknown;
                          media?: undefined;
                          metadata?: Record<string, unknown>;
                          reasoning?: undefined;
                          resource?: undefined;
                          text: string;
                          toolRequest?: undefined;
                          toolResponse?: undefined;
                      }
                      | {
                          custom?: Record<string, unknown>;
                          data?: unknown;
                          media: { contentType?: string; url: string };
                          metadata?: Record<string, unknown>;
                          reasoning?: undefined;
                          resource?: undefined;
                          text?: undefined;
                          toolRequest?: undefined;
                          toolResponse?: undefined;
                      }
                      | {
                          custom?: Record<string, unknown>;
                          data?: unknown;
                          media?: undefined;
                          metadata?: Record<string, unknown>;
                          reasoning?: undefined;
                          resource?: undefined;
                          text?: undefined;
                          toolRequest: {
                              input?: unknown;
                              name: string;
                              partial?: boolean;
                              ref?: string;
                          };
                          toolResponse?: undefined;
                      }
                      | {
                          custom?: Record<string, unknown>;
                          data?: unknown;
                          media?: undefined;
                          metadata?: Record<string, unknown>;
                          reasoning?: undefined;
                          resource?: undefined;
                          text?: undefined;
                          toolRequest?: undefined;
                          toolResponse: { name: string; output?: unknown; ref?: string } & {
                              content?: (
                                  (...)
                                  | (...)
                                  | (...)
                                  | (...)
                                  | (...)
                                  | (...)
                                  | (...)
                                  | (...)
                              )[];
                          };
                      }
                      | {
                          custom?: Record<string, unknown>;
                          data?: unknown;
                          media?: undefined;
                          metadata?: Record<string, unknown>;
                          reasoning?: undefined;
                          resource?: undefined;
                          text?: undefined;
                          toolRequest?: undefined;
                          toolResponse?: undefined;
                      }
                      | {
                          custom: Record<string, any>;
                          data?: unknown;
                          media?: undefined;
                          metadata?: Record<string, unknown>;
                          reasoning?: undefined;
                          resource?: undefined;
                          text?: undefined;
                          toolRequest?: undefined;
                          toolResponse?: undefined;
                      }
                      | {
                          custom?: Record<string, unknown>;
                          data?: unknown;
                          media?: undefined;
                          metadata?: Record<string, unknown>;
                          reasoning: string;
                          resource?: undefined;
                          text?: undefined;
                          toolRequest?: undefined;
                          toolResponse?: undefined;
                      }
                      | {
                          custom?: Record<string, unknown>;
                          data?: unknown;
                          media?: undefined;
                          metadata?: Record<string, unknown>;
                          reasoning?: undefined;
                          resource: { uri: string };
                          text?: undefined;
                          toolRequest?: undefined;
                          toolResponse?: undefined;
                      }
                  )[];
              },
          >,
      >

    • Parameters

      • Optionalinput: { uri: string }
      • Optionalopts: ActionRunOptions<any>

      Returns StreamingResponse<
          z.ZodObject<
              {
                  content: z.ZodArray<
                      z.ZodUnion<
                          [
                              z.ZodObject<
                                  {
                                      custom: z.ZodOptional<z.ZodRecord<(...), (...)>>;
                                      data: z.ZodOptional<z.ZodUnknown>;
                                      media: z.ZodOptional<z.ZodNever>;
                                      metadata: z.ZodOptional<z.ZodRecord<(...), (...)>>;
                                      reasoning: z.ZodOptional<z.ZodNever>;
                                      resource: z.ZodOptional<z.ZodNever>;
                                      toolRequest: z.ZodOptional<z.ZodNever>;
                                      toolResponse: z.ZodOptional<z.ZodNever>;
                                  } & { text: z.ZodString },
                                  "strip",
                                  z.ZodTypeAny,
                                  {
                                      custom?: Record<string, unknown>;
                                      data?: unknown;
                                      media?: undefined;
                                      metadata?: Record<string, unknown>;
                                      reasoning?: undefined;
                                      resource?: undefined;
                                      text: string;
                                      toolRequest?: undefined;
                                      toolResponse?: undefined;
                                  },
                                  {
                                      custom?: Record<string, unknown>;
                                      data?: unknown;
                                      media?: undefined;
                                      metadata?: Record<string, unknown>;
                                      reasoning?: undefined;
                                      resource?: undefined;
                                      text: string;
                                      toolRequest?: undefined;
                                      toolResponse?: undefined;
                                  },
                              >,
                              z.ZodObject<
                                  {
                                      custom: z.ZodOptional<z.ZodRecord<(...), (...)>>;
                                      data: z.ZodOptional<z.ZodUnknown>;
                                      metadata: z.ZodOptional<z.ZodRecord<(...), (...)>>;
                                      reasoning: z.ZodOptional<z.ZodNever>;
                                      resource: z.ZodOptional<z.ZodNever>;
                                      text: z.ZodOptional<z.ZodNever>;
                                      toolRequest: z.ZodOptional<z.ZodNever>;
                                      toolResponse: z.ZodOptional<z.ZodNever>;
                                  } & {
                                      media: z.ZodObject<
                                          { contentType: ...; url: ... },
                                          "strip",
                                          z.ZodTypeAny,
                                          { contentType?: ...; url: ... },
                                          { contentType?: ...; url: ... },
                                      >;
                                  },
                                  "strip",
                                  z.ZodTypeAny,
                                  {
                                      custom?: Record<string, unknown>;
                                      data?: unknown;
                                      media: { contentType?: string; url: string };
                                      metadata?: Record<string, unknown>;
                                      reasoning?: undefined;
                                      resource?: undefined;
                                      text?: undefined;
                                      toolRequest?: undefined;
                                      toolResponse?: undefined;
                                  },
                                  {
                                      custom?: Record<string, unknown>;
                                      data?: unknown;
                                      media: { contentType?: string; url: string };
                                      metadata?: Record<string, unknown>;
                                      reasoning?: undefined;
                                      resource?: undefined;
                                      text?: undefined;
                                      toolRequest?: undefined;
                                      toolResponse?: undefined;
                                  },
                              >,
                              z.ZodObject<
                                  {
                                      custom: z.ZodOptional<z.ZodRecord<(...), (...)>>;
                                      data: z.ZodOptional<z.ZodUnknown>;
                                      media: z.ZodOptional<z.ZodNever>;
                                      metadata: z.ZodOptional<z.ZodRecord<(...), (...)>>;
                                      reasoning: z.ZodOptional<z.ZodNever>;
                                      resource: z.ZodOptional<z.ZodNever>;
                                      text: z.ZodOptional<z.ZodNever>;
                                      toolResponse: z.ZodOptional<z.ZodNever>;
                                  } & {
                                      toolRequest: z.ZodObject<
                                          { input: ...; name: ...; partial: ...; ref: ... },
                                          "strip",
                                          z.ZodTypeAny,
                                          { input?: ...; name: ...; partial?: ...; ref?: ... },
                                          { input?: ...; name: ...; partial?: ...; ref?: ... },
                                      >;
                                  },
                                  "strip",
                                  z.ZodTypeAny,
                                  {
                                      custom?: Record<string, unknown>;
                                      data?: unknown;
                                      media?: undefined;
                                      metadata?: Record<string, unknown>;
                                      reasoning?: undefined;
                                      resource?: undefined;
                                      text?: undefined;
                                      toolRequest: {
                                          input?: unknown;
                                          name: string;
                                          partial?: boolean;
                                          ref?: string;
                                      };
                                      toolResponse?: undefined;
                                  },
                                  {
                                      custom?: Record<string, unknown>;
                                      data?: unknown;
                                      media?: undefined;
                                      metadata?: Record<string, unknown>;
                                      reasoning?: undefined;
                                      resource?: undefined;
                                      text?: undefined;
                                      toolRequest: {
                                          input?: unknown;
                                          name: string;
                                          partial?: boolean;
                                          ref?: string;
                                      };
                                      toolResponse?: undefined;
                                  },
                              >,
                          ],
                      >,
                      "many",
                  >;
              },
              "strip",
              z.ZodTypeAny,
              {
                  content: (
                      | {
                          custom?: Record<string, unknown>;
                          data?: unknown;
                          media?: undefined;
                          metadata?: Record<string, unknown>;
                          reasoning?: undefined;
                          resource?: undefined;
                          text: string;
                          toolRequest?: undefined;
                          toolResponse?: undefined;
                      }
                      | {
                          custom?: Record<string, unknown>;
                          data?: unknown;
                          media: { contentType?: string; url: string };
                          metadata?: Record<string, unknown>;
                          reasoning?: undefined;
                          resource?: undefined;
                          text?: undefined;
                          toolRequest?: undefined;
                          toolResponse?: undefined;
                      }
                      | {
                          custom?: Record<string, unknown>;
                          data?: unknown;
                          media?: undefined;
                          metadata?: Record<string, unknown>;
                          reasoning?: undefined;
                          resource?: undefined;
                          text?: undefined;
                          toolRequest: {
                              input?: unknown;
                              name: string;
                              partial?: boolean;
                              ref?: string;
                          };
                          toolResponse?: undefined;
                      }
                      | {
                          custom?: Record<string, unknown>;
                          data?: unknown;
                          media?: undefined;
                          metadata?: Record<string, unknown>;
                          reasoning?: undefined;
                          resource?: undefined;
                          text?: undefined;
                          toolRequest?: undefined;
                          toolResponse: { name: string; output?: unknown; ref?: string } & {
                              content?: (
                                  (...)
                                  | (...)
                                  | (...)
                                  | (...)
                                  | (...)
                                  | (...)
                                  | (...)
                                  | (...)
                              )[];
                          };
                      }
                      | {
                          custom?: Record<string, unknown>;
                          data?: unknown;
                          media?: undefined;
                          metadata?: Record<string, unknown>;
                          reasoning?: undefined;
                          resource?: undefined;
                          text?: undefined;
                          toolRequest?: undefined;
                          toolResponse?: undefined;
                      }
                      | {
                          custom: Record<string, any>;
                          data?: unknown;
                          media?: undefined;
                          metadata?: Record<string, unknown>;
                          reasoning?: undefined;
                          resource?: undefined;
                          text?: undefined;
                          toolRequest?: undefined;
                          toolResponse?: undefined;
                      }
                      | {
                          custom?: Record<string, unknown>;
                          data?: unknown;
                          media?: undefined;
                          metadata?: Record<string, unknown>;
                          reasoning: string;
                          resource?: undefined;
                          text?: undefined;
                          toolRequest?: undefined;
                          toolResponse?: undefined;
                      }
                      | {
                          custom?: Record<string, unknown>;
                          data?: unknown;
                          media?: undefined;
                          metadata?: Record<string, unknown>;
                          reasoning?: undefined;
                          resource: { uri: string };
                          text?: undefined;
                          toolRequest?: undefined;
                          toolResponse?: undefined;
                      }
                  )[];
              },
              {
                  content: (
                      | {
                          custom?: Record<string, unknown>;
                          data?: unknown;
                          media?: undefined;
                          metadata?: Record<string, unknown>;
                          reasoning?: undefined;
                          resource?: undefined;
                          text: string;
                          toolRequest?: undefined;
                          toolResponse?: undefined;
                      }
                      | {
                          custom?: Record<string, unknown>;
                          data?: unknown;
                          media: { contentType?: string; url: string };
                          metadata?: Record<string, unknown>;
                          reasoning?: undefined;
                          resource?: undefined;
                          text?: undefined;
                          toolRequest?: undefined;
                          toolResponse?: undefined;
                      }
                      | {
                          custom?: Record<string, unknown>;
                          data?: unknown;
                          media?: undefined;
                          metadata?: Record<string, unknown>;
                          reasoning?: undefined;
                          resource?: undefined;
                          text?: undefined;
                          toolRequest: {
                              input?: unknown;
                              name: string;
                              partial?: boolean;
                              ref?: string;
                          };
                          toolResponse?: undefined;
                      }
                      | {
                          custom?: Record<string, unknown>;
                          data?: unknown;
                          media?: undefined;
                          metadata?: Record<string, unknown>;
                          reasoning?: undefined;
                          resource?: undefined;
                          text?: undefined;
                          toolRequest?: undefined;
                          toolResponse: { name: string; output?: unknown; ref?: string } & {
                              content?: (
                                  (...)
                                  | (...)
                                  | (...)
                                  | (...)
                                  | (...)
                                  | (...)
                                  | (...)
                                  | (...)
                              )[];
                          };
                      }
                      | {
                          custom?: Record<string, unknown>;
                          data?: unknown;
                          media?: undefined;
                          metadata?: Record<string, unknown>;
                          reasoning?: undefined;
                          resource?: undefined;
                          text?: undefined;
                          toolRequest?: undefined;
                          toolResponse?: undefined;
                      }
                      | {
                          custom: Record<string, any>;
                          data?: unknown;
                          media?: undefined;
                          metadata?: Record<string, unknown>;
                          reasoning?: undefined;
                          resource?: undefined;
                          text?: undefined;
                          toolRequest?: undefined;
                          toolResponse?: undefined;
                      }
                      | {
                          custom?: Record<string, unknown>;
                          data?: unknown;
                          media?: undefined;
                          metadata?: Record<string, unknown>;
                          reasoning: string;
                          resource?: undefined;
                          text?: undefined;
                          toolRequest?: undefined;
                          toolResponse?: undefined;
                      }
                      | {
                          custom?: Record<string, unknown>;
                          data?: unknown;
                          media?: undefined;
                          metadata?: Record<string, unknown>;
                          reasoning?: undefined;
                          resource: { uri: string };
                          text?: undefined;
                          toolRequest?: undefined;
                          toolResponse?: undefined;
                      }
                  )[];
              },
          >,
          z.ZodTypeAny,
      >