import type { Component } from 'grapesjs'; import { Store } from '.'; import { ComponentContextMenuProps, ContextMenuItem } from '../typeConfigs/components'; export interface ContextMenuCoords { x?: number; y?: number; w?: number; h?: number; width?: number; height?: number; target?: HTMLElement; } export interface ContextMenuShowProps extends ContextMenuCoords { items: ContextMenuItem[]; } export interface CommandContextMenuComponentOptions extends Omit, ContextMenuCoords { source?: ComponentContextMenuProps['source']; skipSelect?: boolean; } export declare class ContextMenuStore { store: Store; isOpen: boolean; isEnabled: boolean; items: ContextMenuItem[]; coordinates: ContextMenuCoords; constructor(store: Store); get publicState(): { enabled: boolean; }; setPublicState(state: Partial): void; showForComponent(component: Component, opts: Omit): Generator, void, ContextMenuItem[]>; getItemsForComponent: (component: Component, opts?: Pick | undefined) => import("mobx/dist/internal").CancellablePromise; show({ items, x, y, w, h }: ContextMenuShowProps): void; hide(): void; clear(): void; } export declare const useContextMenuStore: () => ContextMenuStore; export declare const getContextMenuStore: () => ContextMenuStore;