import type { ECoordinateMode } from "../Charting/Visuals/Annotations/types/ECoordinateMode";
import type { Branded } from "./brand";
declare const __coordinateType: unique symbol;
export type TCoordinate = Branded<number, "Coordinate">;
export type TTypedCoordinate<TBrand> = TCoordinate & {
    [__coordinateType]: TBrand;
};
/** Coordinate in the plane of Data values and Visible Range */
export type TDataValueCoordinate = TTypedCoordinate<"DataValue">;
/** CSS pixel coordinate  */
export type TPixelCoordinate = TTypedCoordinate<"Pixel">;
/** A coordinate type relative to an axis viewportDimension */
export type TRelativeCoordinate = TTypedCoordinate<"Relative">;
/** Canvas "BackBuffer" coordinate (Pixel Coordinate value multiplied by DpiHelper.PIXEL_RATIO)  */
export type TAbsoluteCoordinate = TTypedCoordinate<"Absolute">;
/** Coordinate represented with a value corresponding to the selected coordinate mode */
export type TTargetModeCoordinate = TDataValueCoordinate | TPixelCoordinate | TRelativeCoordinate;
export type TCoordinateTypeForMode = {
    [ECoordinateMode.DataValue]: TDataValueCoordinate;
    [ECoordinateMode.Pixel]: TPixelCoordinate;
    [ECoordinateMode.Relative]: TRelativeCoordinate;
};
export {};
