import { z } from 'zod/v4'; import { LanguageModelV3, LanguageModelV3CallOptions, ProviderV3, ImageModelV3, EmbeddingModelV3 } from '@ai-sdk/provider'; import { FetchFunction } from '@ai-sdk/provider-utils'; import { ProviderErrorStructure, MetadataExtractor } from '@ai-sdk/openai-compatible'; declare const veniceLanguageModelOptionsSchema: z.ZodObject<{ veniceParameters: z.ZodDefault>; enableWebScraping: z.ZodOptional; enableWebCitations: z.ZodOptional; enableE2ee: z.ZodOptional; enableXSearch: z.ZodOptional; stripThinkingResponse: z.ZodOptional; disableThinking: z.ZodOptional; includeVeniceSystemPrompt: z.ZodDefault; characterSlug: z.ZodOptional; includeSearchResultsInStream: z.ZodOptional; returnSearchResultsAsDocuments: z.ZodOptional; }, z.core.$strip>>; topLogprobs: z.ZodOptional; maxCompletionTokens: z.ZodOptional; maxTokens: z.ZodOptional; minP: z.ZodOptional; promptCacheKey: z.ZodOptional; promptCacheRetention: z.ZodOptional>; repetitionPenalty: z.ZodOptional; reasoning: z.ZodOptional>; enabled: z.ZodOptional; summary: z.ZodOptional>; }, z.core.$strip>>; reasoningEffort: z.ZodOptional>; stopTokenIds: z.ZodOptional>; stream: z.ZodDefault; streamOptions: z.ZodOptional>; user: z.ZodOptional; structuredOutputs: z.ZodOptional; strictJsonSchema: z.ZodOptional; parallelToolCalls: z.ZodOptional; logprobs: z.ZodOptional; maxTemp: z.ZodOptional; minTemp: z.ZodOptional; n: z.ZodDefault; }, z.core.$strip>; type VeniceLanguageModelOptions = z.infer; interface VeniceChatConfig { provider: string; headers: () => Record; url: (options: { modelId: string; path: string; }) => string; fetch?: FetchFunction; includeUsage?: boolean; errorStructure?: ProviderErrorStructure; supportsStructuredOutputs?: boolean; supportedUrls?: () => LanguageModelV3['supportedUrls']; metadataExtractor?: MetadataExtractor; } declare class VeniceChatLanguageModel implements LanguageModelV3 { readonly specificationVersion = "v3"; readonly modelId: string; readonly config: VeniceChatConfig; private readonly failedResponseHandler; private readonly successfulResponseHandler; private readonly successfulEventResponseHandler; private readonly chunkSchema; constructor(modelId: string, config: VeniceChatConfig); get provider(): string; private get providerOptionsName(); get supportedUrls(): Record | PromiseLike>; private getArgs; doGenerate(options: LanguageModelV3CallOptions): Promise>>; doStream(options: LanguageModelV3CallOptions): Promise>>; } interface VeniceProviderSettings { /** *Provider name. */ name?: string; /** * API key for authentication */ apiKey?: string; /** * Base URL for API calls */ baseURL?: string; /** * Custom headers for requests */ headers?: Record; /** *Optional custom url query parameters to include in request urls. */ queryParams?: Record; /** * Custom fetch implementation */ fetch?: FetchFunction; /** * Include usage information in streaming responses. */ includeUsage?: boolean; /** * Whether the provider supports structured outputs in chat models. */ supportsStructuredOutputs?: boolean; } interface VeniceProvider extends ProviderV3 { (modelId: string): VeniceChatLanguageModel; languageModel(modelId: string): VeniceChatLanguageModel; chatModel(modelId: string): VeniceChatLanguageModel; completionModel(modelId: string): LanguageModelV3; imageModel(modelId: string): ImageModelV3; embeddingModel(modelId: string): EmbeddingModelV3; /** @deprecated Use `embeddingModel` instead. */ textEmbeddingModel(modelId: string): EmbeddingModelV3; } declare function createVenice(options?: VeniceProviderSettings): VeniceProvider; declare const venice: VeniceProvider; declare const VERSION: string; export { VERSION, type VeniceLanguageModelOptions, type VeniceProvider, type VeniceProviderSettings, createVenice, venice };