import { EmbeddingModel } from "../embedding-model/index.js"; import { LanguageModel } from "../language-model/index.js"; import { JSONObject } from "../json.js"; /** * Provider for language, text embedding, and image generation models. */ export interface Provider { readonly spec: "1.0"; /** * Returns the language model with the given id. * * @throws {NoSuchModelError} If no such model exists. */ languageModel(modelId: string): LanguageModel; /** * Returns the text embedding model with the given id. * * @throws {NoSuchModelError} If no such model exists. */ textEmbeddingModel(modelId: string): EmbeddingModel; } /** * Additional provider-specific metadata. * * They are passed through to the provider from the AI SDK * and enable provider-specific functionality * that can be fully encapsulated in the provider. * * The outer record is keyed by the provider name, and the inner * record is keyed by the provider-specific metadata key. * * ```ts * { * "anthropic": { * "cacheControl": { "type": "ephemeral" } * } * } * ``` */ export type SharedProviderMetadata = Record; export type SharedProviderOptions = Record; //# sourceMappingURL=provider.d.ts.map