/**
 * Options for creating the durable LLM execution step
 */
export interface DurableLLMExecutionStepOptions {
}
/**
 * Create a durable LLM execution step.
 *
 * This step:
 * 1. Deserializes the MessageList from workflow input
 * 2. Resolves tools and model from the runtime context
 * 3. Executes the LLM call
 * 4. Emits streaming chunks via pubsub
 * 5. Returns serialized state for the next step
 *
 * The key difference from the non-durable version is that all state
 * flows through the workflow input/output, and non-serializable
 * dependencies are resolved at execution time.
 */
export declare function createDurableLLMExecutionStep(_options?: DurableLLMExecutionStepOptions): import("../../../../workflows").Step<"durable-llm-execution", unknown, {
    runId: string;
    agentId: string;
    messageListState: any;
    toolsMetadata: any[];
    modelConfig: {
        provider: string;
        modelId: string;
        specificationVersion?: string | undefined;
        originalConfig?: string | Record<string, any> | undefined;
        settings?: Record<string, any> | undefined;
        providerOptions?: Record<string, any> | undefined;
    };
    options: any;
    state: any;
    messageId: string;
    agentName?: string | undefined;
    modelList?: {
        id: string;
        config: {
            provider: string;
            modelId: string;
            specificationVersion?: string | undefined;
            originalConfig?: string | Record<string, any> | undefined;
            providerOptions?: Record<string, any> | undefined;
        };
        maxRetries: number;
        enabled: boolean;
    }[] | undefined;
    agentSpanData?: any;
    modelSpanData?: any;
    stepIndex?: number | undefined;
}, {
    messageListState: any;
    toolCalls: {
        toolCallId: string;
        toolName: string;
        args: Record<string, any>;
        providerMetadata?: Record<string, any> | undefined;
        activeTools?: string[] | null | undefined;
    }[];
    stepResult: {
        reason: string;
        warnings: any[];
        isContinued: boolean;
        totalUsage?: any;
    };
    metadata: any;
    state: any;
    processorRetryCount?: number | undefined;
    processorRetryFeedback?: string | undefined;
    stepIndex?: number | undefined;
}, unknown, unknown, import("../../../../workflows").DefaultEngineType, unknown>;
//# sourceMappingURL=llm-execution.d.ts.map