import { Agent } from "./agent";
import OpenAI from "openai";
type TaskProps = {
    description: string;
    agent?: ReturnType<typeof Agent>;
    expectOutput: string;
};
declare const Task: ({ description, agent: mainAgent, expectOutput }: TaskProps) => {
    description: string;
    agent: {
        role: string;
        goal: string;
        model: import("./models/openai").Model | import("./models/claude").Model | import("./models/ollama").Model;
        memory: (store: {
            addVectors: (vectors: number[][], documents: {
                pageContent: string;
                metadata: Record<string, any>;
            }[]) => void;
            similaritySearchVectorWithScore: (query: number[], k: number) => [{
                metadata: Record<string, any>;
                pageContent: string;
            }, number][];
        } | null) => void;
        execute: (prompt: string, workerTools?: OpenAI.Chat.Completions.ChatCompletionTool[] | undefined) => Promise<string>;
        executeStream: (prompt: string) => Promise<AsyncIterableIterator<string>>;
    } | undefined;
    expectOutput: string;
    execute: ({ agent, context, tools, }: {
        agent?: ReturnType<typeof Agent>;
        context: string;
        tools?: OpenAI.Chat.Completions.ChatCompletionTool[];
    }) => Promise<string>;
};
export { Task };
//# sourceMappingURL=task.d.ts.map