import type { GoogleGenerativeAI } from '@google/generative-ai';
import type { IRetryManager } from '../../../../shared/interfaces/retry-manager.interface.js';
import type { ParseResult } from './types.js';
import type { TokenBucketRateLimiter } from './token-bucket-rate-limiter.js';
export interface GeminiRelationExtractDeps {
    rateLimiter: TokenBucketRateLimiter;
    retryManager: IRetryManager;
    calculateAndLogCost: (provider: 'gemini', promptTokens: number, completionTokens: number) => number;
    parseLlmRelationsResponse: (text: string) => ParseResult;
}
export declare function extractRelationsWithGemini(geminiClient: GoogleGenerativeAI, prompt: string, deps: GeminiRelationExtractDeps): Promise<ParseResult>;
//# sourceMappingURL=extract-relations-gemini.d.ts.map