interface ImpressionProperties { guild_id?: string; channel_id?: string; } interface ContextMenusOptions { align?: "top" | "bottom" | "left" | "right" | "center"; position?: "top" | "bottom" | "left" | "right" | "center" | "window_center"; onClose?: () => void; impressionName?: string; impressionProperties?: ImpressionProperties; enableSpellCheck?: boolean; } export interface ContextMenuProps { className: string; position: "top" | "bottom" | "left" | "right" | "center" | "window_center" | null; theme: string; onHeightUpdate: () => void; config: ContextMenusOptions; target: HTMLElement; context: string; } export type Close = () => void; export type Open = (event: React.MouseEvent, render?: (props: ContextMenuProps) => React.ReactNode, options?: ContextMenusOptions, renderLazy?: Promise<(props: ContextMenuProps) => React.ReactNode>) => void; export type OpenLazy = (event: React.MouseEvent, renderLazy?: () => Promise<(props: ContextMenuProps) => React.ReactNode>, options?: ContextMenusOptions) => void; declare const _default: { open: Open; openLazy: OpenLazy; close: Close; }; export default _default;