export default class Point {
    constructor(data: any);
    paths: any[];
    renderData: any[];
    label: PointLabel;
    renderLabel: boolean;
    focused: boolean;
    sortableType: string;
    placeOffsets: {
        x: number;
        y: number;
    };
    zIndex: number;
    /**
     * Get unique ID for point -- must be defined by subclass
     */
    getId(): void;
    getElementId(): string;
    /**
     * Get Point type -- must be defined by subclass
     */
    getType(): void;
    /**
     * Get Point name
     */
    getName(): string;
    /**
     * Get latitude
     */
    getLat(): number;
    /**
     * Get longitude
     */
    getLon(): number;
    containsSegmentEndPoint(): boolean;
    containsBoardPoint(): boolean;
    containsAlightPoint(): boolean;
    containsTransferPoint(): boolean;
    getPatterns(): never[];
    /**
     * Draw the point
     *
     * @param {Display} display
     */
    render(display: any): void;
    /**
     * Does not need to be implemented by subclass
     */
    addRenderData(): void;
    /**
     * Does not need to be implemented by subclass
     */
    clearRenderData(): void;
    containsFromPoint(): boolean;
    containsToPoint(): boolean;
    constructMergedMarker(display: any): {
        height: number;
        rx: any;
        ry: any;
        width: number;
        x: number;
        y: number;
    };
    initMarkerData(display: any): void;
    mergedMarkerData: {
        height: number;
        rx: any;
        ry: any;
        width: number;
        x: number;
        y: number;
    } | undefined;
    getMarkerBBox(): any;
    setFocused(focused: any): void;
    isFocused(): boolean;
    /**
     * Does not need to be implemented by subclass
     */
    runFocusTransition(display: any, callback: any): void;
    /**
     * Does not need to be implemented by subclass
     */
    setAllPatternsFocused(): void;
    getZIndex(): number;
    getAverageCoord(): {
        x: number;
        y: number;
    };
    hasRenderData(): boolean;
    /**
     * Does not need to be implemented by subclass
     */
    makeDraggable(transitive: any): void;
    toString(): string;
}
import PointLabel from "../labeler/pointlabel";
