import { ElementRef } from '@angular/core';
import { TableColumnContainer } from './table-column-container';
import * as i0 from "@angular/core";
/**
 * Directive representing a table column (which may have sub-columns). Leaf
 * columns (columns with no sub-columns) may specify `minWidth` and `fixed` to
 * impose sizing restrictions on their respective table columns.
 */
export declare class TableColumnDirective extends TableColumnContainer {
    protected elementRef: ElementRef;
    /**
     * Identifier of this column (used, for example, to set a label on the
     * respective table-header cell).
     */
    id: string;
    /**
     * Colspan of the column; this binding only has an effect if the column is a
     * leaf column.
     */
    colspan?: number | string;
    /**
     * Minimum width of a column (in pixels); this binding is only relevant when
     * applied to leaf columns. Note that the actual width of a column will be
     * relative the minimum width of all other columns; as an example a column
     * with a `minWidth` of `200` should always be twice as large as a column with
     * a `minWidth` of `100`.
     *
     * An array may be provided (with a length matching `colspan`) to specify the
     * `minWidth` of each column that this column spans over.
     */
    minWidth?: number | number[];
    /**
     * `fixed` columns have their width set to `minWidth` and their width won't
     * ever vary.
     */
    fixed: boolean;
    constructor(parentTableColumnContainer: TableColumnContainer | null | undefined, elementRef: ElementRef);
    /**
     * `rowSpan` that should be set on the header table cell that represents this
     * column.
     * @returns`rowSpan` of the cell representing this column.
     */
    get rowSpan(): number;
    /**
     * `colSpan` that should be set on the header table cell that represents this
     * column.colSpan
     * @returns `colSpan` of the cell representing this column.
     */
    get colSpan(): number;
    static ɵfac: i0.ɵɵFactoryDeclaration<TableColumnDirective, [{ skipSelf: true; }, null]>;
    static ɵdir: i0.ɵɵDirectiveDeclaration<TableColumnDirective, "lf-table-column, [lfTableColumn]", ["lfTableColumn"], { "id": "id"; "colspan": "colspan"; "minWidth": "minWidth"; "fixed": "fixed"; }, {}, never>;
}
