import type { Ref } from 'vue' export type CellIndex = [row: number, col: number] export interface DragInfo { startCoords: [x: number, y: number] startIndex: number endIndex: number type: 'row' | 'col' } export interface DragContext { preview: HTMLDivElement previewRoot: HTMLTableSectionElement wrapper: HTMLDivElement content: HTMLElement contentRoot: HTMLTableSectionElement yHandle: HTMLDivElement xHandle: HTMLDivElement colHandle: HTMLDivElement rowHandle: HTMLDivElement } export interface Refs { dragPreviewRef: Ref tableWrapperRef: Ref contentWrapperRef: Ref yLineHandleRef: Ref xLineHandleRef: Ref colHandleRef: Ref rowHandleRef: Ref hoverIndex: Ref lineHoverIndex: Ref dragInfo: Ref }