import { type ReferenceParseResult } from './reference-type-extractor'; import { type BatchCheckConfig } from './reference-http-client'; export type { BatchCheckConfig } from './reference-http-client'; export interface ReferenceExistenceCheck { reference: string; parseResult: ReferenceParseResult; exists: boolean; statusCode?: number; errorMessage?: string; responseTimeMs?: number; fromCache?: boolean; } export interface BatchCheckResult { results: ReferenceExistenceCheck[]; existCount: number; notExistCount: number; failedCount: number; cacheHitCount: number; totalTimeMs: number; averageResponseTimeMs: number; } export declare class BatchedReferenceChecker { private cache; private httpClient; private config; private pendingChecks; private circuitBreaker; constructor(config?: Partial); checkBatch(references: string[], config?: Partial): Promise; private checkReferencesInParallel; private checkWithDeduplication; private checkSingleReference; resetCircuits(): void; clearCache(): void; getCacheStats(): { size: number; entries: Array<{ reference: string; exists: boolean; age: number; }>; }; extractReferences(resource: any): string[]; checkResourceReferences(resource: any, config?: Partial): Promise; checkBundleReferences(bundle: any, config?: Partial): Promise; filterExistingReferences(references: string[], config?: Partial): Promise; filterNonExistingReferences(references: string[], config?: Partial): Promise; allReferencesExist(references: string[], config?: Partial): Promise; getDeduplicationStats(): { pendingChecks: number; cacheSize: number; estimatedSavedRequests: number; }; clearPendingChecks(): void; getOptimizationConfig(): { maxConcurrent: number; timeoutMs: number; cacheTtlMs: number; keepAlive: boolean; }; } export declare function getBatchedReferenceChecker(config?: Partial): BatchedReferenceChecker; export declare function resetBatchedReferenceChecker(): void; //# sourceMappingURL=batched-reference-checker.d.ts.map