@ai-sdk/provider-utils
Version:
178 lines (174 loc) • 7.56 kB
text/typescript
export { asArray } from './as-array';
export type { Arrayable } from './as-array';
export * from './combine-headers';
export {
connectToWebSocket,
type WebSocketConnection,
} from './connect-to-websocket';
export { convertAsyncIteratorToReadableStream } from './convert-async-iterator-to-readable-stream';
export { convertInlineFileDataToUint8Array } from './convert-inline-file-data-to-uint8-array';
export { convertImageModelFileToDataUri } from './convert-image-model-file-to-data-uri';
export { convertJsonResponseToolStream } from './convert-json-response-tool-stream';
export { convertToFormData } from './convert-to-form-data';
export { createLanguageModelResponseMetadata } from './create-language-model-response-metadata';
export { createNullLanguageModelUsage } from './create-null-language-model-usage';
export {
createToolNameMapping,
type ToolNameMapping,
} from './create-tool-name-mapping';
export {
createProviderStreamError,
isProviderStreamError,
type ProviderStreamError,
} from './create-provider-stream-error';
export * from './delay';
export { DelayedPromise } from './delayed-promise';
export * from './delete-from-api';
export {
detectMediaType,
getTopLevelMediaType,
isFullMediaType,
} from './detect-media-type';
export { downloadBlob } from './download-blob';
export { DownloadError } from './download-error';
export {
EMBEDDING_MODEL_MAX_INPUT_BYTES_PER_CALL as EXPERIMENTAL_EMBEDDING_MODEL_MAX_INPUT_BYTES_PER_CALL,
EMBEDDING_MODEL_PROVIDER_OPTIONS_TRANSFORMER as EXPERIMENTAL_EMBEDDING_MODEL_PROVIDER_OPTIONS_TRANSFORMER,
type EmbeddingModelProviderOptionsTransformer,
} from './embedding-model-capabilities';
export {
fetchWithValidatedEndpoint,
fetchWithValidatedRedirects,
} from './fetch-with-validated-redirects';
export { encodePathSegment } from './encode-path-segment';
export { extractLines } from './extract-lines';
export * from './extract-response-headers';
export * from './fetch-function';
export { fetchUntrustedUrl } from './fetch-untrusted-url';
export { filterNullable } from './filter-nullable';
export { createIdGenerator, generateId, type IdGenerator } from './generate-id';
export * from './get-error-message';
export * from './get-from-api';
export { getRuntimeEnvironmentUserAgent } from './get-runtime-environment-user-agent';
export type { HasRequiredKey } from './has-required-key';
export { injectJsonInstructionIntoMessages } from './inject-json-instruction';
export * from './is-abort-error';
export { isBrowserRuntime } from './is-browser-runtime';
export { isBuffer } from './is-buffer';
export { isSameOrigin } from './is-same-origin';
export { isNonNullable } from './is-non-nullable';
export { isProviderReference } from './is-provider-reference';
export { isRecord } from './is-record';
export { isUrlSupported } from './is-url-supported';
export { isValidHostnamePart } from './is-valid-hostname-part';
export * from './load-api-key';
export { loadOptionalSetting } from './load-optional-setting';
export { loadSetting } from './load-setting';
export {
isCustomReasoning,
mapReasoningToProviderBudget,
mapReasoningToProviderEffort,
} from './map-reasoning-to-provider';
export { type MaybePromiseLike } from './maybe-promise-like';
export { mediaTypeToExtension } from './media-type-to-extension';
export { normalizeHeaders } from './normalize-headers';
export { normalizeBatchRequestCounts } from './normalize-batch-request-counts';
export * from './parse-json';
export { parseJsonEventStream } from './parse-json-event-stream';
export { parseProviderOptions } from './parse-provider-options';
export {
resolveProviderOptions,
type ProviderOptionsResolution,
} from './resolve-provider-options';
export * from './post-multipart-stream-to-api';
export * from './post-to-api';
export {
createProviderDefinedToolFactory,
createProviderDefinedToolFactoryWithOutputSchema,
type ProviderDefinedToolFactory,
type ProviderDefinedToolFactoryWithOutputSchema,
} from './provider-defined-tool-factory';
export {
createProviderExecutedToolFactory,
type ProviderExecutedToolFactory,
} from './provider-executed-tool-factory';
export { cancelResponseBody } from './cancel-response-body';
export {
DEFAULT_MAX_DOWNLOAD_SIZE,
readResponseWithSizeLimit,
} from './read-response-with-size-limit';
export * from './remove-undefined-entries';
export * from './resolve';
export { resolveFullMediaType } from './resolve-full-media-type';
export { resolveProviderReference } from './resolve-provider-reference';
export * from './retry-with-exponential-backoff';
export * from './response-handler';
export {
asSchema,
jsonSchema,
lazySchema,
zodSchema,
type FlexibleSchema,
type InferSchema,
type LazySchema,
type Schema,
type ValidationResult,
} from './schema';
export { serializeModelOptions } from './serialize-model-options';
export { SerializationError } from './serialization-error';
export { secureJsonParse } from './secure-json-parse';
export {
withTelemetryRedaction,
redactTelemetryValue,
} from './telemetry-redaction';
export {
SPEECH_STREAM_START_FRAME_TYPE as EXPERIMENTAL_SPEECH_STREAM_START_FRAME_TYPE,
SPEECH_STREAM_TEXT_DELTA_FRAME_TYPE as EXPERIMENTAL_SPEECH_STREAM_TEXT_DELTA_FRAME_TYPE,
SPEECH_STREAM_TEXT_DONE_FRAME_TYPE as EXPERIMENTAL_SPEECH_STREAM_TEXT_DONE_FRAME_TYPE,
parseSpeechStreamClientFrame as experimental_parseSpeechStreamClientFrame,
parseSpeechStreamPart as experimental_parseSpeechStreamPart,
serializeSpeechStreamPart as experimental_serializeSpeechStreamPart,
type SpeechStreamClientFrame as Experimental_SpeechStreamClientFrame,
type SpeechStreamStartFrame as Experimental_SpeechStreamStartFrame,
type SpeechStreamTextDeltaFrame as Experimental_SpeechStreamTextDeltaFrame,
} from './speech-stream-envelope';
export {
StreamingToolCallTracker,
type StreamingToolCallDelta,
type StreamingToolCallTrackerOptions,
} from './streaming-tool-call-tracker';
export { stripFileExtension } from './strip-file-extension';
export {
TRANSCRIPTION_STREAM_AUDIO_DONE_FRAME_TYPE as EXPERIMENTAL_TRANSCRIPTION_STREAM_AUDIO_DONE_FRAME_TYPE,
TRANSCRIPTION_STREAM_START_FRAME_TYPE as EXPERIMENTAL_TRANSCRIPTION_STREAM_START_FRAME_TYPE,
parseTranscriptionStreamClientFrame as experimental_parseTranscriptionStreamClientFrame,
parseTranscriptionStreamPart as experimental_parseTranscriptionStreamPart,
serializeTranscriptionStreamPart as experimental_serializeTranscriptionStreamPart,
type TranscriptionStreamClientFrame as Experimental_TranscriptionStreamClientFrame,
type TranscriptionStreamStartFrame as Experimental_TranscriptionStreamStartFrame,
} from './transcription-stream-envelope';
export * from './uint8-utils';
export { validateBaseURL } from './validate-base-url';
export { validateDownloadUrl } from './validate-download-url';
export * from './validate-types';
export { VERSION } from './version';
export {
getWebSocketConstructor,
readWebSocketMessageText,
toWebSocketUrl,
waitForWebSocketBufferDrain,
type WebSocketConstructor,
type WebSocketLike,
} from './websocket';
export { withUserAgentSuffix } from './with-user-agent-suffix';
export * from './without-trailing-slash';
// folder re-exports
export * from './types';
// external re-exports
export type * from '@standard-schema/spec';
export { WORKFLOW_DESERIALIZE, WORKFLOW_SERIALIZE } from '@workflow/serde';
export {
EventSourceParserStream,
type EventSourceMessage,
} from 'eventsource-parser/stream';
export { stringifyWithBigIntAndCycles } from './stringify-with-bigint-and-cycles';