import { Action, Column, Event, Form, InitModelOf, Table, TableColumnStructureChangedEvent, TableCompleteCellEditEvent, TableOrganizerFormWidgetMap, TableRow, TableRowsSelectedEvent, TableStartCellEditEvent, WidgetModel } from '../../index';
import { ColumnsTable0, ProfilesTable } from './TableOrganizerFormModel';
export declare class TableOrganizerForm extends Form {
    widgetMap: TableOrganizerFormWidgetMap;
    table: Table;
    profilesTable: ProfilesTable;
    columnsTable: ColumnsTable0;
    keyColumn: Column<Column>;
    protected _tableColumnStructureChangedHandler: (event: TableColumnStructureChangedEvent) => void;
    protected _jsonModel(): WidgetModel;
    protected _init(model: InitModelOf<this>): void;
    protected _destroy(): void;
    protected _onTableColumnStructureChanged(event: TableColumnStructureChangedEvent): void;
    protected _load(): JQuery.Promise<any>;
    protected _reloadProfilesTable(): void;
    protected _onProfilesTableRowsSelected(event: TableRowsSelectedEvent<ProfilesTable>): void;
    protected _onProfilesTableStartCellEdit(event: TableStartCellEditEvent<string, ProfilesTable>): void;
    protected _onProfilesTableCompleteCellEdit(event: TableCompleteCellEditEvent<string>): void;
    protected _updateProfileMenus(): void;
    protected _addNewConfig(): void;
    protected _newConfigName(): string;
    protected _loadConfig(row?: TableRow): void;
    protected _updateConfig(row?: TableRow): void;
    protected _renameConfig(row?: TableRow): void;
    protected _deleteConfigs(rows?: TableRow[]): void;
    protected _reloadColumnsTable(): void;
    protected _computeColumnStatus(column: Column<any>): string;
    protected _computeColumnStatusTooltip(column: Column<any>): string;
    protected _updateColumnMenus(): void;
    protected _isColumnRemovable(column: Column<any>): boolean;
    protected _onAddColumnMenuAction(event: Event<Action>): Promise<void>;
    protected _onModifyColumnMenuAction(event: Event<Action>): Promise<void>;
    protected _onRemoveColumnMenuAction(event: Event<Action>): void;
    protected _onColumnsTableRowsSelected(event: TableRowsSelectedEvent): void;
    protected _installColumnUpDownMenus(): void;
}
//# sourceMappingURL=TableOrganizerForm.d.ts.map