import { WellboreHeader } from '../../../sdk';
import { WellMapStyles } from './themes';
export type WellMapPadding = {
    top: number;
    bottom: number;
    left: number;
    right: number;
};
export type WellMapMeasures = {
    svgWidth: number;
    svgHeight: number;
    tracksWidth: number;
    trackWidth: number;
    padding: WellMapPadding;
    ratio: number;
    range: [number, number];
    getSlotPosition: (slot: number) => number;
};
export type WellMapState = {
    _allWellbores: WellboreHeader[];
    wellbores: WellboreHeader[];
    wellboreIds: string[];
    wellboresByName: Record<string, WellboreHeader>;
    wellboresById: Record<string, WellboreHeader>;
    segments: Record<string, [number, number]>;
    tracksOrder: string[];
    slotsById: Record<string, number>;
    activeDepths: Record<string, number>;
    depth?: number;
    domain: [number, number];
    measures: WellMapMeasures;
    styles: WellMapStyles;
    setStyles: (theme: WellMapStyles) => void;
    setDepth: (depth: number | undefined) => void;
    setMeasure: (width: number, height: number) => void;
    setWellbores: (wellboreHeaders: WellboreHeader[]) => void;
};
export declare const createWellMapState: () => import('zustand').UseBoundStore<import('zustand').StoreApi<WellMapState>>;
