import { M as Message, T as Tool } from './agent-QDJUBi3Z.js';
export { A as Agent, n as AnyZodType, I as InferenceResult, l as MCP, m as MaybePromise, N as Network, e as NetworkRun, R as RoutingAgent, S as State, j as TextContent, f as TextMessage, h as ToolCallMessage, k as ToolMessage, i as ToolResultMessage, a as createAgent, d as createNetwork, b as createRoutingAgent, c as createTool, g as getDefaultRoutingAgent, q as getInngestFnInput, o as getStepTools, p as isInngestFn, s as stringifyError } from './agent-QDJUBi3Z.js';
import { AiAdapter } from '@inngest/ai';
export { anthropic, gemini, grok, openai } from '@inngest/ai';
import 'inngest/components/InngestFunction';
import 'inngest';
import 'zod';
import 'inngest/experimental';

declare const createAgenticModelFromAiAdapter: <TAiAdapter extends AiAdapter.Any>(adapter: TAiAdapter) => AgenticModel<TAiAdapter>;
declare class AgenticModel<TAiAdapter extends AiAdapter.Any> {
    #private;
    requestParser: AgenticModel.RequestParser<TAiAdapter>;
    responseParser: AgenticModel.ResponseParser<TAiAdapter>;
    constructor({ model, requestParser, responseParser, }: AgenticModel.Constructor<TAiAdapter>);
    infer(stepID: string, input: Message[], tools: Tool.Any[], tool_choice: Tool.Choice): Promise<AgenticModel.InferenceResponse>;
}
declare namespace AgenticModel {
    type Any = AgenticModel<AiAdapter.Any>;
    /**
     * InferenceResponse is the response from a model for an inference request.
     * This contains parsed messages and the raw result, with the type of the raw
     * result depending on the model's API repsonse.
     */
    type InferenceResponse<T = unknown> = {
        output: Message[];
        raw: T;
    };
    interface Constructor<TAiAdapter extends AiAdapter.Any> {
        model: TAiAdapter;
        requestParser: RequestParser<TAiAdapter>;
        responseParser: ResponseParser<TAiAdapter>;
    }
    type RequestParser<TAiAdapter extends AiAdapter.Any> = (model: TAiAdapter, state: Message[], tools: Tool.Any[], tool_choice: Tool.Choice) => AiAdapter.Input<TAiAdapter>;
    type ResponseParser<TAiAdapter extends AiAdapter.Any> = (output: AiAdapter.Output<TAiAdapter>) => Message[];
}

export { AgenticModel, Message, Tool, createAgenticModelFromAiAdapter };
