import { IMenu } from '@csnext/cs-core';
import { GraphElement } from '@csnext/cs-data';
import Vue from 'vue';
import { DocDatasource } from '../../datasources/doc-datasource';
export declare type additionalItemsRequest = (e: GraphElement, s: DocDatasource) => IMenu[];
export default class ElementContextMenu extends Vue {
    x: number;
    y: number;
    element: GraphElement | undefined;
    source: DocDatasource;
    showContextMenu: boolean;
    additionalItems?: IMenu[] | additionalItemsRequest;
    itemUpdated(): void;
    listUpdated(): void;
    contextMenuitems: IMenu[];
    private callAction;
    linkToTarget(target: GraphElement, type: string): Promise<void>;
    elementChanged(e: GraphElement | undefined): void;
    initMenu(): void;
    mounted(): void;
}
