import { DataSet } from './data-set';
import { Type } from '@angular/core';
import { CustomTitleInterface } from '../../components/thead/cells/custom-title.component/custom-title.interface';
export declare class Column {
    id: string;
    protected settings: any;
    protected dataSet: DataSet;
    preTitle: string;
    posTitle: string;
    titleContainer: Type<CustomTitleInterface>;
    titleContainerProps: {
        prop: string;
        value: any;
    }[];
    title: string;
    type: string;
    class: string;
    width: string;
    isSortable: boolean;
    isEditable: boolean;
    isAddable: boolean;
    isFilterable: boolean;
    sortDirection: string;
    defaultSortDirection: string;
    editor: {
        type: string;
        config: any;
        component: any;
    };
    filter: {
        type: string;
        config: any;
    };
    renderComponent: any;
    compareFunction: Function;
    valuePrepareFunction: Function;
    filterFunction: Function;
    onComponentInitFunction: Function;
    currency: {
        symbol: string;
        decimals: number;
    };
    viewClass: string;
    constructor(id: string, settings: any, dataSet: DataSet);
    getOnComponentInitFunction(): Function;
    getCompareFunction(): Function;
    getValuePrepareFunction(): Function;
    getFilterFunction(): Function;
    getConfig(): any;
    getFilterType(): any;
    getFilterConfig(): any;
    protected process(): void;
    prepareType(): string;
    prepareSortDirection(): string;
    determineType(): string;
}
