import { z } from "zod";
import { ToolContext, ToolResponse } from "../types/index.js";
export declare const analyzeToolSchema: z.ZodEffects<z.ZodObject<{
    image_path: z.ZodOptional<z.ZodString>;
    question: z.ZodString;
    provider_config: z.ZodOptional<z.ZodObject<{
        type: z.ZodDefault<z.ZodEnum<["auto", "ollama", "openai"]>>;
        model: z.ZodOptional<z.ZodString>;
    }, "strip", z.ZodTypeAny, {
        type: "ollama" | "openai" | "auto";
        model?: string | undefined;
    }, {
        type?: "ollama" | "openai" | "auto" | undefined;
        model?: string | undefined;
    }>>;
}, "passthrough", z.ZodTypeAny, z.objectOutputType<{
    image_path: z.ZodOptional<z.ZodString>;
    question: z.ZodString;
    provider_config: z.ZodOptional<z.ZodObject<{
        type: z.ZodDefault<z.ZodEnum<["auto", "ollama", "openai"]>>;
        model: z.ZodOptional<z.ZodString>;
    }, "strip", z.ZodTypeAny, {
        type: "ollama" | "openai" | "auto";
        model?: string | undefined;
    }, {
        type?: "ollama" | "openai" | "auto" | undefined;
        model?: string | undefined;
    }>>;
}, z.ZodTypeAny, "passthrough">, z.objectInputType<{
    image_path: z.ZodOptional<z.ZodString>;
    question: z.ZodString;
    provider_config: z.ZodOptional<z.ZodObject<{
        type: z.ZodDefault<z.ZodEnum<["auto", "ollama", "openai"]>>;
        model: z.ZodOptional<z.ZodString>;
    }, "strip", z.ZodTypeAny, {
        type: "ollama" | "openai" | "auto";
        model?: string | undefined;
    }, {
        type?: "ollama" | "openai" | "auto" | undefined;
        model?: string | undefined;
    }>>;
}, z.ZodTypeAny, "passthrough">>, z.objectOutputType<{
    image_path: z.ZodOptional<z.ZodString>;
    question: z.ZodString;
    provider_config: z.ZodOptional<z.ZodObject<{
        type: z.ZodDefault<z.ZodEnum<["auto", "ollama", "openai"]>>;
        model: z.ZodOptional<z.ZodString>;
    }, "strip", z.ZodTypeAny, {
        type: "ollama" | "openai" | "auto";
        model?: string | undefined;
    }, {
        type?: "ollama" | "openai" | "auto" | undefined;
        model?: string | undefined;
    }>>;
}, z.ZodTypeAny, "passthrough">, z.objectInputType<{
    image_path: z.ZodOptional<z.ZodString>;
    question: z.ZodString;
    provider_config: z.ZodOptional<z.ZodObject<{
        type: z.ZodDefault<z.ZodEnum<["auto", "ollama", "openai"]>>;
        model: z.ZodOptional<z.ZodString>;
    }, "strip", z.ZodTypeAny, {
        type: "ollama" | "openai" | "auto";
        model?: string | undefined;
    }, {
        type?: "ollama" | "openai" | "auto" | undefined;
        model?: string | undefined;
    }>>;
}, z.ZodTypeAny, "passthrough">>;
export type AnalyzeToolInput = z.infer<typeof analyzeToolSchema> & {
    path?: string;
};
export declare function analyzeToolHandler(input: AnalyzeToolInput, context: ToolContext): Promise<ToolResponse>;
//# sourceMappingURL=analyze.d.ts.map