import { type Dispatch, type SetStateAction } from 'react';
import type { Company } from '../../stores/company-safeguard/CompanySafeguardContext';
import type { OffsetWell, OffsetSettingsInput, OffsetSettingsOutput } from '../../OffsetWellPickerV5.types';
import type { FetchedOffsetWell } from '../../api/shared/types';
import { type WellSection, type OffsetWellsBySection, type TaScore } from '../useExternalOffsets';
import { type TransformedWell } from './useAdvancedWells';
type UseWellDataPipelineParams = {
    subjectWellId: number | null;
    assetCompanyId: number | undefined;
    offsetSettings: OffsetSettingsInput | undefined;
    maxOffsetWellNumber: number;
    isLoadAllWells: boolean;
    open: boolean | undefined;
    onSave: ((offsetSettings: OffsetSettingsOutput, selectedWells?: OffsetWell[]) => void) | undefined;
};
type UseWellDataPipelineReturn = {
    wells: TransformedWell[] | null;
    subjectWell: TransformedWell | FetchedOffsetWell | null;
    subjectWellCoords: {
        latitude: number;
        longitude: number;
    } | null;
    rawWellsWithSubject: FetchedOffsetWell[] | null;
    wellSections: WellSection[] | null;
    externalOffsets: OffsetWellsBySection | null;
    taScores: TaScore[];
    idasWellIds: number[];
    owsWellIds: number[];
    wellhubWellIds: number[];
    loadedAssetId: number | null;
    isWellSectionColumnVisible: boolean;
    metricsKeys: string[];
    setMetricsKeys: Dispatch<SetStateAction<string[]>>;
    loadingWellIds: Set<number>;
    isAllWellsLoaded: boolean;
    areRawWellsLoading: boolean;
    companies: Company[];
    canViewCompanies: boolean;
    companyProvider: string | null;
    pinnedWells: OffsetWell[] | null;
    fetchSearchedWells: (wellIds: number[]) => Promise<OffsetWell[]>;
    resetSafeguard: () => void;
    activeInterventionWellIds: Set<number>;
};
export declare const useWellDataPipeline: ({ subjectWellId, assetCompanyId, offsetSettings, maxOffsetWellNumber, isLoadAllWells, open, onSave, }: UseWellDataPipelineParams) => UseWellDataPipelineReturn;
export {};
//# sourceMappingURL=useWellDataPipeline.d.ts.map