import { PluginObject } from 'vue';
import { MSortEvent } from '../../../directives/sortable/sortable';
import { ModulVue } from '../../../utils/vue/vue';
import { MColumnTable } from '../../table/table';
export declare class MOrganizeTableColumns extends ModulVue {
    readonly columns: MColumnTable[];
    displayedColumns: MColumnTable[];
    hiddenColumns: MColumnTable[];
    setInternalsColumns(): void;
    get numberDisplayedColumns(): number;
    get numberHiddenColumns(): number;
    removeColumn(column: MColumnTable): void;
    addColumn(column: MColumnTable): void;
    moveColumn(event: MSortEvent): void;
    isDraggable(column: MColumnTable): string;
    isDroppable(column: MColumnTable): string;
    emitReorganize(columns: MColumnTable[]): void;
    private moveItemInList;
}
declare const OrganizeTableColumnsPlugin: PluginObject<any>;
export default OrganizeTableColumnsPlugin;
//# sourceMappingURL=organize-table-columns.d.ts.map