import { TableColumn } from '../base';
import type { ColumnValidator } from '../base/models/column-validator';
/**
 * The base class for table columns that display fields of any type as text.
 */
export declare abstract class TableColumnTextBase<TColumnConfig, TColumnValidator extends ColumnValidator<[]> = ColumnValidator<[]>> extends TableColumn<TColumnConfig, TColumnValidator> {
    fieldName?: string;
    protected fieldNameChanged(): void;
}
type TableColumnBaseConstructor<TColumnConfig, TColumnValidator extends ColumnValidator<[]>> = abstract new (...args: any[]) => TableColumnTextBase<TColumnConfig, TColumnValidator>;
export declare function mixinTextBase<TBase extends TableColumnBaseConstructor<TColumnConfig, TColumnValidator>, TColumnConfig, TColumnValidator extends ColumnValidator<[]> = ColumnValidator<[]>>(base: TBase): (abstract new (...args: any[]) => {
    groupingDisabled: boolean;
    groupIndex?: number | null;
    groupingDisabledChanged(): void;
    groupIndexChanged(): void;
    readonly columnInternals: import("../base/models/column-internals").ColumnInternals<unknown, ColumnValidator<[]>>;
}) & (abstract new (...args: any[]) => {
    fractionalWidth?: number | null;
    minPixelWidth?: number | null;
    fractionalWidthChanged(): void;
    minPixelWidthChanged(): void;
    readonly columnInternals: import("../base/models/column-internals").ColumnInternals<unknown, ColumnValidator<[]>>;
}) & (abstract new (...args: any[]) => {
    placeholder?: string;
    placeholderChanged(): void;
}) & (abstract new (...args: any[]) => {
    sortingDisabled: boolean;
    sortIndex?: number | null;
    sortDirection: import("../../table/types").TableColumnSortDirection;
    sortingDisabledChanged(): void;
    sortDirectionChanged(): void;
    sortIndexChanged(): void;
    readonly columnInternals: import("../base/models/column-internals").ColumnInternals<unknown, ColumnValidator<[]>>;
}) & TBase;
export {};
