import { EmbeddingProvider } from './EmbeddingProvider.js';
import * as aiplatform from '@google-cloud/aiplatform';
import { z } from 'zod';
declare const EmbeddingProviderGoogleConfigSchema: z.ZodDefault<z.ZodObject<{
    model: z.ZodDefault<z.ZodString>;
    projectId: z.ZodEffects<z.ZodOptional<z.ZodString>, string | undefined, string | undefined>;
    location: z.ZodDefault<z.ZodString>;
    dimensions: z.ZodDefault<z.ZodNumber>;
    taskType: z.ZodDefault<z.ZodString>;
    client: z.ZodOptional<z.ZodType<aiplatform.v1.PredictionServiceClient, z.ZodTypeDef, aiplatform.v1.PredictionServiceClient>>;
}, "strip", z.ZodTypeAny, {
    model: string;
    location: string;
    dimensions: number;
    taskType: string;
    projectId?: string | undefined;
    client?: aiplatform.v1.PredictionServiceClient | undefined;
}, {
    model?: string | undefined;
    projectId?: string | undefined;
    location?: string | undefined;
    dimensions?: number | undefined;
    taskType?: string | undefined;
    client?: aiplatform.v1.PredictionServiceClient | undefined;
}>>;
type EmbeddingProviderGoogleConfig = z.infer<typeof EmbeddingProviderGoogleConfigSchema>;
/**
 * Google implementation of the EmbeddingProvider
 */
export declare class EmbeddingProviderGoogle implements EmbeddingProvider {
    private _config;
    private _client;
    private _endpoint;
    constructor(config?: EmbeddingProviderGoogleConfig);
    getEmbedding(text: string): Promise<number[]>;
    getDimensions(): number;
    getName(): string;
    getModel(): string;
}
export {};
//# sourceMappingURL=EmbeddingProviderGoogle.d.ts.map