/**
 * Embedding provider factory.
 *
 * All embedding providers implement the EmbeddingProvider interface (defined
 * in embedding-types.ts), allowing the rest of the codebase to be agnostic
 * about which backend generates the vectors.
 *
 * Providers:
 *   - ollama   (default) — local Ollama (Docker or external)
 *   - openai   — OpenAI Embeddings API (text-embedding-3-small, etc.)
 *   - google   — Google Generative AI Embedding API (gemini-embedding-001, etc.)
 *   - lmstudio — local LM Studio server via OpenAI-compatible API
 *   - litellm  — LiteLLM proxy (OpenAI-compatible gateway in front of 100+ providers)
 */
import type { InfraProgressCallback } from "./docker.js";
export type { EmbeddingHealthStatus, EmbeddingProvider, EmbeddingReadinessResult } from "./embedding-types.js";
import type { EmbeddingProvider } from "./embedding-types.js";
/**
 * Get (or create) the active embedding provider singleton.
 * Provider is selected based on EMBEDDING_PROVIDER env var.
 * @param onProgress Optional callback for reporting infrastructure setup progress
 */
export declare function getEmbeddingProvider(onProgress?: InfraProgressCallback): Promise<EmbeddingProvider>;
/** Reset the provider singleton (for testing). */
export declare function resetEmbeddingProvider(): void;
//# sourceMappingURL=embedding-provider.d.ts.map