import { ColumnDefinition, ColumnLookup, ICellComponent, IColumn, IColumnComponent, ScrollToColumnPosition } from '../../../../../../types/src/table';

export default class ColumnComponent implements IColumnComponent {
    _column: IColumn;
    type: string;
    constructor(column: IColumn);
    getElement(): HTMLElement;
    getDefinition(): ColumnDefinition;
    getField(): string;
    getTitleDownload(): string | null;
    getCells(): ICellComponent[];
    isVisible(): boolean;
    show(): Promise<void>;
    hide(): void;
    toggle(): void;
    delete(): Promise<void>;
    getSubColumns(): IColumnComponent[];
    getParentColumn(): false | IColumnComponent;
    _getSelf(): IColumn;
    scrollTo(position: ScrollToColumnPosition, ifVisible?: boolean): Promise<void> | undefined;
    getTable(): import('../../../../../../types/src/table').ITabulator;
    move(to: ColumnLookup, after: boolean): void;
    getNextColumn(): false | IColumnComponent;
    getPrevColumn(): false | IColumnComponent;
    updateDefinition(updates: ColumnDefinition): Promise<IColumnComponent>;
    getWidth(): number;
    setWidth(width: number | true): Promise<void>;
}
