import { type GatewayConfig, type OpenAIEmbeddingOutcome, type OpenAIEmbeddingRequest } from "@oscharko-dev/keiko-model-gateway";
import type { MemoryId } from "@oscharko-dev/keiko-contracts/memory";
import type { MemoryEmbeddingInput, MemoryVaultStore } from "@oscharko-dev/keiko-memory-vault";
import { type UiHandlerDeps } from "./deps.js";
export declare function selectMemoryEmbeddingModelId(config: GatewayConfig | undefined): string | undefined;
export type MemoryEmbedder = (text: string) => Promise<MemoryEmbeddingInput | null>;
export declare function createMemoryEmbedder(config: GatewayConfig | undefined, requestImpl: (request: OpenAIEmbeddingRequest) => Promise<OpenAIEmbeddingOutcome>): MemoryEmbedder | null;
export declare function embedMemoryText(deps: UiHandlerDeps, text: string): Promise<MemoryEmbeddingInput | null>;
export declare function embedAndStoreMemory(deps: UiHandlerDeps, vault: MemoryVaultStore, memoryId: MemoryId, text: string): Promise<void>;
export declare function cosineSimilarity(a: Float32Array, b: Float32Array): number;
//# sourceMappingURL=memory-embedding.d.ts.map