import type { OutboundHttpEgressConfig } from "./types.js";
export interface OpenAIEmbeddingRequest {
    readonly endpoint: string;
    readonly apiKey: string;
    readonly apiKeyHeaderName?: string;
    readonly modelId: string;
    readonly input: string;
    readonly signal?: AbortSignal;
    readonly timeoutMs?: number;
    readonly fetchImpl?: typeof fetch;
    readonly egress?: OutboundHttpEgressConfig | undefined;
}
export interface OpenAIEmbeddingSuccess {
    readonly vector: Float32Array;
    readonly modelId: string;
    readonly modelRevision?: string;
}
export type OpenAIEmbeddingOutcome = {
    readonly ok: true;
    readonly value: OpenAIEmbeddingSuccess;
} | {
    readonly ok: false;
    readonly kind: OpenAIEmbeddingErrorKind;
};
export type OpenAIEmbeddingErrorKind = "wrong-header" | "rate-limited" | "unsupported-model" | "timeout" | "cancelled" | "transport" | "invalid-response";
export declare function requestOpenAIEmbedding(request: OpenAIEmbeddingRequest): Promise<OpenAIEmbeddingOutcome>;
//# sourceMappingURL=openai-embedding-adapter.d.ts.map