import { Cell, Column, ColumnDescriptor, ColumnModel, LookupRow, ObjectOrChildModel, ProposalChooser, SmartFieldLookupResult, Table, TableLayoutResetter, TableRow, TableRowClickEvent, TableRowModel, TableRowsSelectedEvent } from '../../../index';
export declare class TableProposalChooser<TValue> extends ProposalChooser<TValue, Table, TableRow> {
    protected _createContent(): Table;
    protected _createLayoutResetter(): TableLayoutResetter;
    protected _createColumn(): ObjectOrChildModel<ColumnModel<TValue>>;
    protected _createColumnForDescriptor(descriptor: ColumnDescriptor): Column;
    protected _createTable(columns: Column<TValue>[], headerVisible: boolean): Table;
    protected _onRowClick(event: TableRowClickEvent): void;
    protected _postRender(): void;
    protected _onRowsSelected(event: TableRowsSelectedEvent): void;
    protected _renderSelectedRow(row: TableRow): void;
    selectedRow(): TableRow;
    setLookupResult(result: SmartFieldLookupResult<TValue>): void;
    trySelectCurrentValue(): void;
    selectFirstLookupRow(): void;
    clearSelection(): void;
    clearLookupRows(): void;
    /**
     * Creates a table-row for the given lookup-row.
     *
     * @returns table-row model
     */
    protected _createTableRow(lookupRow: LookupRow<TValue>, multipleColumns: boolean): TableRowModel;
    protected _renderContent(): void;
    getSelectedLookupRow(): LookupRow<TValue>;
    /**
     * Takes the TableRowData bean and the infos provided by the column descriptors to create an
     * array of additional values in the correct order, as defined by the descriptors.
     */
    protected _transformTableRowData(lookupRow: LookupRow<TValue>, tableRowData: object): Cell<TValue>[];
}
//# sourceMappingURL=TableProposalChooser.d.ts.map