import type { AllWellsLoadProgress } from '../../../stores/picker-props-store/createPickerPropsStore';
type ComputeIsAllWellsLoadedParams = {
    isLoadAllWells: boolean;
    allWellsLoadProgress: AllWellsLoadProgress | null;
    wellsLength: number;
    rawWellsCount: number;
    areRawWellsLoading: boolean;
    areAdvancedWellsLoading: boolean;
    arePinnedWellsLoading: boolean;
    areSearchedWellsLoading: boolean;
};
/**
 * Computes whether the wells dataset is fully ready for cascade pruning and
 * filter validation.
 *
 * When Load-All-Wells is ON, the readiness signal must reflect that
 * (1) the all-wells fetch has actually completed (not just "no fetch is
 * currently in flight" — which is also true *before* the fetch starts),
 * and (2) the FINAL `wells` dataset propagated through `useAdvancedWells`
 * contains the full set, not the subject+pinned partial. Without (2)
 * there is a brief render where the fetch just finished but
 * `useAdvancedWells` hasn't yet re-run (its loading flag flips true on
 * the next effect tick), so loading flags are all false *and* `wells`
 * is still the small partial. Cascade pruning would fire against that
 * partial and wipe saved downstream filter values.
 *
 * Propagation is measured against `rawWellsCount` (the post-filter
 * `rawWellsWithSubject` count that feeds `useAdvancedWells`), NOT against
 * `allWellsLoadProgress.loaded`. `loaded` counts the wells fetched into the
 * viewport store *before* the client-side segment filter
 * (`isDrillingOnlyWell` / `isInterventionOnlyWell`) runs, so any server/client
 * filter mismatch leaves the final `wells` count permanently below `loaded`
 * and `wellsLength >= loaded` could never become true (DRA-5654).
 */
export declare const computeIsAllWellsLoaded: ({ isLoadAllWells, allWellsLoadProgress, wellsLength, rawWellsCount, areRawWellsLoading, areAdvancedWellsLoading, arePinnedWellsLoading, areSearchedWellsLoading, }: ComputeIsAllWellsLoadedParams) => boolean;
export {};
//# sourceMappingURL=computeIsAllWellsLoaded.d.ts.map