import { create } from 'zustand' export type ContextMenuIcon = 'copy' | 'cut' | 'paste' | 'undo' | 'redo' | 'selectAll' | 'close' | 'folder' | 'file' | 'link' | 'rename' | 'trash' export interface ContextMenuItem { id: string label: string shortcut?: string icon?: ContextMenuIcon action: () => void disabled?: boolean separator?: boolean } interface ContextMenuState { isOpen: boolean x: number y: number items: ContextMenuItem[] open: (x: number, y: number, items: ContextMenuItem[]) => void close: () => void } export const useContextMenuStore = create((set) => ({ isOpen: false, x: 0, y: 0, items: [], open: (x, y, items) => set({ isOpen: true, x, y, items }), close: () => set({ isOpen: false }), }))