UNPKG

@mastra/core

Version:

Mastra is a framework for building AI-powered applications and agents with a modern TypeScript stack.

90 lines 3.69 kB
import type { LanguageModelV1, LanguageModelV1CallOptions } from '../../../../_types/@internal_ai-sdk-v4/dist/index.js'; /** * Wrapper class for AI SDK v4 (LanguageModelV1) legacy models. * * The wrapped `#model` is held in a true JS private field so the * underlying SDK client (and any enumerable config it exposes) cannot * leak into observability spans. `serializeForSpan()` makes the safe * shape explicit. * * This wrapper is applied by `resolveModelConfig` when a raw v4 model * is passed to Mastra, so callers do not need to construct it directly. */ export declare class AISDKV4LegacyLanguageModel implements LanguageModelV1 { #private; readonly specificationVersion: 'v1'; readonly provider: LanguageModelV1['provider']; readonly modelId: LanguageModelV1['modelId']; readonly defaultObjectGenerationMode: LanguageModelV1['defaultObjectGenerationMode']; readonly supportsImageUrls?: LanguageModelV1['supportsImageUrls']; readonly supportsStructuredOutputs?: LanguageModelV1['supportsStructuredOutputs']; constructor(config: LanguageModelV1); supportsUrl(url: URL): boolean; doGenerate(options: LanguageModelV1CallOptions): PromiseLike<{ text?: string; reasoning?: string | Array<{ type: "text"; text: string; signature?: string; } | { type: "redacted"; data: string; }>; files?: Array<{ data: string | Uint8Array; mimeType: string; }>; toolCalls?: Array<import("../../../../_types/@internal_ai-sdk-v4/dist/index.js").LanguageModelV1FunctionToolCall>; finishReason: import("../../../../_types/@internal_ai-sdk-v4/dist/index.js").LanguageModelV1FinishReason; usage: { promptTokens: number; completionTokens: number; }; rawCall: { rawPrompt: unknown; rawSettings: Record<string, unknown>; }; rawResponse?: { headers?: Record<string, string>; body?: unknown; }; request?: { body?: string; }; response?: { id?: string; timestamp?: Date; modelId?: string; }; warnings?: import("../../../../_types/@internal_ai-sdk-v4/dist/index.js").LanguageModelV1CallWarning[]; providerMetadata?: import("../../../../_types/@internal_ai-sdk-v4/dist/index.js").LanguageModelV1ProviderMetadata; sources?: import("../../../../_types/@internal_ai-sdk-v4/dist/index.js").LanguageModelV1Source[]; logprobs?: import("../../../../_types/@internal_ai-sdk-v4/dist/index.js").LanguageModelV1LogProbs; }>; doStream(options: LanguageModelV1CallOptions): PromiseLike<{ stream: ReadableStream<import("../../../../_types/@internal_ai-sdk-v4/dist/index.js").LanguageModelV1StreamPart>; rawCall: { rawPrompt: unknown; rawSettings: Record<string, unknown>; }; rawResponse?: { headers?: Record<string, string>; }; request?: { body?: string; }; warnings?: Array<import("../../../../_types/@internal_ai-sdk-v4/dist/index.js").LanguageModelV1CallWarning>; }>; /** * Custom serialization for tracing/observability spans. * `#model` is already a true JS private field and not enumerable, so * the wrapped provider SDK client can't leak. This method makes the * safe shape explicit. */ serializeForSpan(): { specificationVersion: 'v1'; modelId: string; provider: string; }; } //# sourceMappingURL=model.d.ts.map