import type { Editor } from "@tiptap/core"; type Type = "row" | "column"; export type TableHandleEventDetail = { type: Type; referenceElement: HTMLElement; }; export type TableAddAtLimitEventDetail = { type: Type; }; export type TableEventType = { name: "handleClick"; detail: TableHandleEventDetail; } | { name: "addAtLimit"; detail: TableAddAtLimitEventDetail; }; type EventName = TableEventType["name"]; type EventDetail = Extract["detail"]; export declare class TableEvent extends CustomEvent { constructor({ name, detail }: TableEventType); static dispatch(name: TName, args: { editor: Editor; } & EventDetail): void; static listen(name: TName, args: { editor: Editor; callback: (detail: EventDetail) => void; }): () => void; } export {};