import { LLM } from '../../agents/providers.js'; import type { XAILLMModel } from './models.js'; /** Options for {@link XAILLM}. */ export type XAILLMOptions = { /** xAI API key. Defaults to the `XAI_API_KEY` environment variable. */ apiKey?: string; /** Model id. Default `'grok-4-1-fast-non-reasoning'`. */ model?: XAILLMModel | string; /** API base URL. Default `'https://api.x.ai/v1'`. */ baseUrl?: string; /** Sampling temperature; higher is more random. Default `0.7`. */ temperature?: number; /** Tool-selection strategy. Default `'auto'`. */ toolChoice?: string; /** Maximum number of tokens to generate. Default `1024`. */ maxCompletionTokens?: number; /** Nucleus-sampling probability mass. Default `null` (provider default). */ topP?: number | null; /** Frequency penalty. Default `null`. */ frequencyPenalty?: number | null; /** Presence penalty. Default `null`. */ presencePenalty?: number | null; /** Random seed for reproducible sampling. Default `null`. */ seed?: number | null; /** Stop sequence(s). Default `null`. */ stop?: string | null; /** Stable end-user identifier. Default `null`. */ user?: string | null; /** Allow parallel tool calls. Default `null` (provider default). */ parallelToolCalls?: boolean | null; /** Structured-output response format. Default `null`. */ responseFormat?: Record | null; /** Reasoning effort hint. Default `null`. */ reasoningEffort?: string | null; /** Prompt-cache key for cache reuse. Default `null`. */ promptCacheKey?: string | null; /** Service tier. Default `null`. */ serviceTier?: string | null; [key: string]: any; }; declare class XAILLMImpl extends LLM { static readonly displayName = "XAILLM"; _providerName: string; apiKey?: string; model: string; baseUrl: string; temperature: number; maxOutputTokens: number; toolChoice: string; topP: number | null; frequencyPenalty: number | null; presencePenalty: number | null; seed: number | null; stop: string | null; user: string | null; parallelToolCalls: boolean | null; responseFormat: Record | null; reasoningEffort: string | null; promptCacheKey: string | null; serviceTier: string | null; constructor(opts?: XAILLMOptions); getRuntimeConfig(): Record; } export type XAILLM = XAILLMImpl; /** xAI (Grok) large language model (LLM). */ export declare const XAILLM: (opts?: XAILLMOptions) => XAILLM; export {};