import { Ref } from 'vue'; import { CanvasState, ContextMenuConfig, CanvasEventName, CanvasContext } from '../types'; export declare function useContextMenu(state: CanvasState, containerRef: Ref | undefined, deps: { canvasEmit: (event: CanvasEventName, ...args: any[]) => void; api: CanvasContext['api']; history: CanvasContext['history']; clipboard?: any; }): { showContextMenu: Ref; contextMenuX: Ref; contextMenuY: Ref; contextMenuOpacity: Ref; visibleContextMenuItems: Ref<{ id: string; type?: "item" | "separator" | undefined; label?: string | undefined; icon?: string | undefined; shortcut?: string | undefined; onClick?: ((context: import('../types').CanvasEventContext) => void) | undefined; show?: ((context: import('../types').CanvasEventContext) => boolean) | undefined; }[], ContextMenuConfig[] | { id: string; type?: "item" | "separator" | undefined; label?: string | undefined; icon?: string | undefined; shortcut?: string | undefined; onClick?: ((context: import('../types').CanvasEventContext) => void) | undefined; show?: ((context: import('../types').CanvasEventContext) => boolean) | undefined; }[]>; hideContextMenu: () => void; handleContextMenu: (e: MouseEvent, pluginItems?: ContextMenuConfig[]) => void; deleteSelect: () => void; };