import type { RAGEmbeddingProvider } from "@absolutejs/ai";
type FetchLike = (input: RequestInfo | URL, init?: RequestInit | BunFetchRequestInit) => Promise<Response>;
export type OpenAIEmbeddingsConfig = {
    apiKey: string;
    baseUrl?: string;
    defaultModel?: string;
    dimensions?: number;
    fetch?: FetchLike;
};
export type OpenAICompatibleEmbeddingsConfig = OpenAIEmbeddingsConfig & {
    baseUrl: string;
};
export type GeminiEmbeddingsConfig = {
    apiKey: string;
    baseUrl?: string;
    defaultModel?: string;
    dimensions?: number;
    fetch?: FetchLike;
};
export type OllamaEmbeddingsConfig = {
    baseUrl?: string;
    defaultModel?: string;
    fetch?: FetchLike;
};
export declare const alibabaEmbeddings: (config: {
    apiKey: string;
}) => RAGEmbeddingProvider;
export declare const deepseekEmbeddings: (config: {
    apiKey: string;
}) => RAGEmbeddingProvider;
export declare const geminiEmbeddings: (config: GeminiEmbeddingsConfig) => RAGEmbeddingProvider;
export declare const googleEmbeddings: (config: {
    apiKey: string;
}) => RAGEmbeddingProvider;
export declare const metaEmbeddings: (config: {
    apiKey: string;
}) => RAGEmbeddingProvider;
export declare const mistralaiEmbeddings: (config: {
    apiKey: string;
}) => RAGEmbeddingProvider;
export declare const moonshotEmbeddings: (config: {
    apiKey: string;
}) => RAGEmbeddingProvider;
export declare const ollamaEmbeddings: (config?: OllamaEmbeddingsConfig) => RAGEmbeddingProvider;
export declare const openaiCompatibleEmbeddings: (config: OpenAICompatibleEmbeddingsConfig) => RAGEmbeddingProvider;
export declare const openaiEmbeddings: (config: OpenAIEmbeddingsConfig) => RAGEmbeddingProvider;
export declare const xaiEmbeddings: (config: {
    apiKey: string;
}) => RAGEmbeddingProvider;
export {};
