import OpenAI from 'openai';
import { Agent, Response } from './types';
export declare class Swarm {
    private client;
    constructor(client?: OpenAI);
    private getChatCompletion;
    private handleFunctionResult;
    private handleToolCalls;
    runAndStream(agent: Agent, messages: any[], contextVariables?: Record<string, any>, modelOverride?: string | null, debug?: boolean, maxTurns?: number, executeTools?: boolean): AsyncGenerator<any, void, unknown>;
    run(agent: Agent, messages: any[], contextVariables?: Record<string, any>, modelOverride?: string | null, stream?: boolean, debug?: boolean, maxTurns?: number, executeTools?: boolean): Promise<Response | AsyncGenerator<any, void, unknown>>;
}
