UNPKG

solid-contextmenu

Version:

Add contextmenu to your solid app with ease

38 lines (37 loc) 978 B
import { Accessor } from "solid-js"; import { LocalMenuProps } from "."; export declare type MenuId = string | number; export interface Pos { x: number; y: number; } export interface Size { width: number; height: number; } export declare type TriggerEvent = MouseEvent; export declare type ShowContextMenuParams = { id: MenuId; event: TriggerEvent; props?: any; position?: Pos; }; export declare type MenuContextType = Omit<LocalMenuProps, "children"> & { shown: Accessor<boolean>; props: Accessor<any>; hide: () => void; }; export interface ItemParams<Props = any, Data = any> { /** * Any props supplied when triggering the menu */ props?: Props; /** * Data object provided to item */ data?: Data; } export declare type HandlerParams<Props = any, Data = any> = ItemParams<Props, Data> & { event: MouseEvent; }; export declare type BooleanPredicate = boolean | ((args: ItemParams) => boolean);