import { OnesTable, SortItemData } from '../../../../@ones-table/common';
import { GC } from '../../../../@ones-table/core';
import Sortable from 'sortablejs';
import './custom-sort-dialog.scss';
export default class CustomSortDialog {
    private table;
    private range;
    private dialog;
    private components;
    private sortable;
    constructor(table: OnesTable, range: GC.Spread.Sheets.Range);
    destroy(): void;
    show(): void;
    updateItems(items: SortItemData[]): void;
    _handleDragStart: (event: Sortable.SortableEvent) => void;
    _handleDragEnd: (event: Sortable.SortableEvent) => void;
    updateItemsState(): void;
    _handleClose: () => void;
    _handleClick: (event: MouseEvent) => void;
    _handleRemoveItem(item: HTMLElement | null): void;
    _handleCreateNewItem(): void;
    _handleClickButton: (dialog: unknown, button: HTMLElement) => Promise<boolean>;
}
