import type { Color } from "@deck.gl/core";
import { type colorTablesArray } from "@emerson-eps/color-tables/";
import type { Position } from "geojson";
import { type PropertyDataType } from "../../utils/layerTools";
import type { ColorAccessor, LogCurveDataType, WellFeature } from "../types";
import { type WellsLayerProps } from "../wellsLayer";
import type { ContinuousLegendDataType, DiscreteLegendDataType } from "../../../components/ColorLegend";
export declare function getLogForWellbore(logs: LogCurveDataType[], logRunName: string, wellName: string): LogCurveDataType | undefined;
export declare function getLogIndexByName(d: LogCurveDataType, log_name: string): number;
export declare function getLogIndexByNames(d: LogCurveDataType, names: string[]): number;
export declare function isSelectedLogRun(d: LogCurveDataType, logrun_name: string): boolean;
export declare function getLogValues(d: LogCurveDataType, logrun_name: string, log_name: string): number[];
export declare function getLogInfo(d: LogCurveDataType, logrun_name: string, log_name: string): {
    name: string;
    description: string;
} | undefined;
export declare function getDiscreteLogMetadata(d: LogCurveDataType, log_name: string): {
    attributes: unknown;
    objects: Record<string, [Color, number]>;
};
export declare function getLogSegmentIndexForMd(log: LogCurveDataType, md: number): number;
export declare function getLogProperty(coord: Position, wells_data: WellFeature[], log_data: LogCurveDataType, logrun_name: string, log_name: string): PropertyDataType | null;
export declare function getLogWidth(d: LogCurveDataType, logrun_name: string, log_name: string): number[];
export declare function getLegendData(logs: LogCurveDataType[], wellName: string, logName: string, logColor: string): ContinuousLegendDataType | DiscreteLegendDataType | null;
export declare function getLogMd(d: LogCurveDataType, logrun_name: string): number[];
export declare function getCurveValueAtRow(log: LogCurveDataType, curveName: string, rowIndex: number): number;
export declare function getCurveValueAtMd(log: LogCurveDataType, curveName: string, md: number): number | null;
export declare function injectMdRows(log: LogCurveDataType, ...mdValues: number[]): LogCurveDataType;
export declare function getLogColor(d: LogCurveDataType, logrun_name: string, log_name: string, logColor: string, colorTables: colorTablesArray, colorMappingFunction: WellsLayerProps["colorMappingFunction"], isLog: boolean): Color[];
export declare function getLogPath(wells_data: WellFeature[], d: LogCurveDataType, logrun_name: string, trajectory_line_color?: ColorAccessor): Position[];
export declare function getColumn<D>(data: D[][], col: number): D[];
