import { BaseRenderer } from "./BaseRenderer";
import { Atom } from "../../../domain/entities/CoreAtom";
export declare class AtomRenderer extends BaseRenderer {
    atom: Atom;
    private selectionElement?;
    private textElement?;
    private radicalElement?;
    constructor(atom: Atom);
    get scaledPosition(): import("../../..").Vec2;
    get center(): import("../../..").Vec2;
    private appendRootElement;
    private appendBody;
    private appendSelectionContour;
    protected appendHover(): any;
    showHover(): void;
    hideHover(): void;
    private get shouldHydrogenBeOnLeft();
    get labelText(): string;
    private get isAtomTerminal();
    get isLabelVisible(): boolean;
    get labelLength(): number;
    private get labelColor();
    get labelBBoxes(): DOMRect[];
    get shouldDisplayHydrogen(): boolean;
    private appendLabel;
    appendSelection(): void;
    removeSelection(): void;
    drawSelection(): void;
    moveSelection(): void;
    private appendCharge;
    private appendRadical;
    private appendExplicitValence;
    private appendExplicitIsotope;
    private appendAtomProperties;
    show(): void;
    move(): void;
    remove(): void;
    protected appendHoverAreaElement(): void;
    protected removeHover(): void;
}
