import { Kanban } from '../base/kanban';
import { HeaderArgs } from '../base/interface';
import { ColumnsModel } from '../models/index';
import { MobileLayout } from './mobile-layout';
/**
 * Kanban layout rendering module
 *
 */
export declare class LayoutRender extends MobileLayout {
    parent: Kanban;
    kanbanRows: HeaderArgs[];
    columnKeys: string[];
    swimlaneIndex: number;
    scrollLeft: number;
    private swimlaneRow;
    columnData: {
        [key: string]: any[];
    };
    swimlaneData: {
        [key: string]: any[];
    };
    frozenSwimlaneRow: HTMLElement;
    frozenOrder: number;
    isSelectedCard: boolean;
    constructor(parent: Kanban);
    private initRender;
    private renderHeader;
    private renderContent;
    private renderSingleContent;
    private initializeSwimlaneTree;
    private renderSwimlaneRow;
    private renderCards;
    private renderCard;
    private renderEmptyCard;
    private renderColGroup;
    getRows(): HeaderArgs[];
    private swimlaneSorting;
    private createStackedRow;
    private scrollUiUpdate;
    private onContentScroll;
    private addFrozenSwimlaneDataKey;
    frozenRows(e?: Event): void;
    removeFrozenRows(): void;
    private onColumnScroll;
    private onAdaptiveScroll;
    /**
     * Check column is visible or not.
     *
     * @param {ColumnsModel} column - specifies the column.
     * @returns {boolean}
     * @private
     * @hidden
     */
    isColumnVisible(column: ColumnsModel): boolean;
    private renderLimits;
    private renderValidation;
    private getValidationClass;
    private refreshValidation;
    getColumnData(columnValue: string | number, dataSource?: Record<string, any>[]): Record<string, any>[];
    private sortCategory;
    sortOrder(key: string, direction: string, cardData: Record<string, any>[]): Record<string, any>[];
    private documentClick;
    disableAttributeSelection(cards: HTMLElement[] | Element): void;
    getColumnCards(data?: Record<string, any>[]): Record<string, any[]>;
    getSwimlaneCards(): Record<string, any[]>;
    refreshHeaders(): void;
    refreshCards(): void;
    refresh(): void;
    updateScrollPosition(): void;
    renderCardBasedOnIndex(data: Record<string, any>, index?: number): void;
    removeCard(data: Record<string, any>): void;
    wireEvents(): void;
    unWireEvents(): void;
    wireDragEvent(): void;
    unWireDragEvent(): void;
    destroy(): void;
}
