import { BaseElement } from '../baseElement';
import * as d3 from 'd3';
export declare class BaseProperty extends BaseElement {
    toText(): any;
    labelHeight: number;
    labelWidth: number;
    smallestRadius: number;
    cardinality: any;
    domain: any;
    private _inverse;
    link: any;
    minCardinality: any;
    maxCardinality: any;
    range: any;
    subProperties: any;
    superProperties: any;
    linkType: string;
    markerType: string;
    labelVisible: boolean;
    cardinalityElement: any;
    labelElement: d3.Selection<any>;
    linkGroup: any;
    markerElement: d3.Selection<any>;
    editingTextElement: any;
    pinGroupElement: any;
    ignoreLocalHoverEvents: any;
    fobj: any;
    haloGroupElement: any;
    myWidth: number;
    defaultWidth: number;
    shapeElement: any;
    textElement: any;
    parent_labelObject: any;
    backupFullIri: any;
    redundantProperties: never[];
    x: any;
    y: any;
    fx: any;
    fy: any;
    visualAttributes: any;
    constructor(graph: any);
    getHalos(): any;
    getPin(): any;
    distanceToBorder: (dx: any, dy: any) => any;
    linkHasMarker: () => boolean;
    markerId(): string;
    toggleFocus: () => void;
    labelObject(lo: any, once: any): any;
    hide(val: any): void;
    inverse(p?: any): any;
    getShapeElement(): any;
    actualRadius(): number;
    draw(labelGroup: any): any;
    addRect(labelContainer: any): any;
    drawLabel(labelContainer: any): void;
    redrawElement(): void;
    addEquivalentsToLabel: (textBox: any) => void;
    equivalentsString(): string | undefined;
    drawCardinality: (container: any) => boolean;
    generateCardinalityText(): any;
    setHighlighting(enable: any): void;
    /**
     * Combines the sub- and superproperties into a single array, because
     * they're often used equivalently.
     * @returns {Array}
     */
    private getSubAndSuperProperties;
    foreground(): void;
    /**
     * Foregrounds the sub- and superproperties of this property.
     * This is separated from the foreground-function to prevent endless loops.
     */
    private foregroundSubAndSuperProperties;
    animationProcess(): boolean;
    private onMouseOver;
    private onMouseOut;
    drawPin(): void;
    removePin: () => void;
    removeHalo(): void;
    drawHalo(pulseAnimation: any): void;
    getMyWidth(): number;
    measureTextWidth(text: any, textStyle: any): number;
    textWidth(): number;
    width(): number;
    height(): number;
    animateDynamicLabelWidth(dynamic: any): void;
    redrawLabelText(): void;
    addTextLabelElement(): void;
    updateTextElement(): void;
    enableEditing(autoEditing: any): false | undefined;
    raiseDoubleClickEdit(forceIRISync: any): void;
    updateHoverElements(enable: any): void;
    copyInformation(other: any): void;
}
