import { buildUnityScanContext, buildUnityScanContextFromSeed } from '../../core/unity/scan-context.js'; import { resolveUnityBindings, type ResolvedUnityBinding } from '../../core/unity/resolver.js'; import type { UnityHydrationMode } from '../../core/unity/options.js'; import { type UnityContextPayload, type UnityHydrationMeta } from './unity-enrichment.js'; import { resolveUnityConfig } from '../../core/config/unity-config.js'; import { hydrateLazyBindings, type HydrateLazyBindingsInput } from './unity-lazy-hydrator.js'; import { readUnityOverlayBindings, upsertUnityOverlayBindings } from './unity-lazy-overlay.js'; import { readUnityParityCache, upsertUnityParityCache } from './unity-parity-cache.js'; import { type ParityWarmupQueue } from './unity-parity-warmup-queue.js'; import { loadUnityParitySeed } from './unity-parity-seed-loader.js'; export interface HydrationDeps { executeQuery: (query: string, params?: Record) => Promise; repoPath: string; storagePath: string; indexedCommit: string; } export interface HydrateUnityInput { mode: UnityHydrationMode; basePayload: UnityContextPayload; deps: HydrationDeps; symbol: { uid: string; name: string; filePath: string; }; runtime?: Partial; } interface HydrationRuntime { now: () => number; queue: ParityWarmupQueue; resolveLazyConfig: () => Pick['config'], 'lazyMaxPaths' | 'lazyBatchSize' | 'lazyMaxMs'>; hydrateLazyBindings: (input: HydrateLazyBindingsInput) => ReturnType; readOverlayBindings: typeof readUnityOverlayBindings; upsertOverlayBindings: typeof upsertUnityOverlayBindings; readParityCache: typeof readUnityParityCache; upsertParityCache: typeof upsertUnityParityCache; loadParitySeed: typeof loadUnityParitySeed; buildScanContext: typeof buildUnityScanContext; buildScanContextFromSeed: typeof buildUnityScanContextFromSeed; resolveBindings: typeof resolveUnityBindings; shouldEnableWarmup: (env: NodeJS.ProcessEnv) => boolean; } export declare function mergeUnityBindings(baseBindings: ResolvedUnityBinding[], resolvedByPath: Map): ResolvedUnityBinding[]; export declare function mergeParityUnityBindings(baseNonLightweightBindings: ResolvedUnityBinding[], resolvedBindings: ResolvedUnityBinding[]): ResolvedUnityBinding[]; export declare function attachUnityHydrationMeta(payload: UnityContextPayload, input: Pick & { hasExpandableBindings: boolean; }): UnityContextPayload; export declare function buildMissingEvidenceFromHydrationMeta(meta?: UnityHydrationMeta): string[]; export declare function hydrateUnityForSymbol(input: HydrateUnityInput): Promise; export declare function __resetUnityRuntimeHydrationStateForTest(): void; export {};