UNPKG

gridstack

Version:

TypeScript/JS lib for dashboard layout and creation, no external dependencies, with many wrappers (React, Angular, Vue, Ember, knockout...)

30 lines (29 loc) 1.16 kB
/** * dd-draggable.ts 5.0 * Copyright (c) 2021 Alain Dumesny - see GridStack root license */ import { DDBaseImplement, HTMLElementExtendOpt } from './dd-base-impl'; import { DDUIData } from '../types'; export interface DDDraggableOpt { appendTo?: string | HTMLElement; containment?: string | HTMLElement; handle?: string; revert?: string | boolean | unknown; scroll?: boolean; helper?: string | HTMLElement | ((event: Event) => HTMLElement); start?: (event: Event, ui: DDUIData) => void; stop?: (event: Event) => void; drag?: (event: Event, ui: DDUIData) => void; } export declare class DDDraggable extends DDBaseImplement implements HTMLElementExtendOpt<DDDraggableOpt> { el: HTMLElement; option: DDDraggableOpt; helper: HTMLElement; constructor(el: HTMLElement, option?: DDDraggableOpt); on(event: 'drag' | 'dragstart' | 'dragstop', callback: (event: DragEvent) => void): void; off(event: 'drag' | 'dragstart' | 'dragstop'): void; enable(): void; disable(forDestroy?: boolean): void; destroy(): void; updateOption(opts: DDDraggableOpt): DDDraggable; }