import { NTable } from './interface';
export declare const componentName = "CdsTable";
declare const _default: import('vue').DefineComponent<import('vue').ExtractPropTypes<{
    theme: {
        type: import('vue').PropType<import('../../composable').TTheme | string>;
        available: readonly ["cdsLight", "cdsDark", "b2bLight", "b2bDark", "promoLight", "promoDark"];
        default: undefined;
    };
    readonly: {
        type: import('vue').PropType<boolean>;
        default: boolean;
    };
    disabled: {
        type: import('vue').PropType<boolean>;
        default: boolean;
    };
    loading: {
        type: import('vue').PropType<boolean>;
        default: boolean;
    };
    locale: {
        type: import('vue').PropType<import('../../locale').TAvailableLocale | import('../../locale').ILocale>;
        default: undefined;
    };
    size: {
        type: import('vue').PropType<import('../../composable').TSize>;
        default: string;
        available: readonly ["xs", "sm", "md", "lg", "xl"];
        validator: (value: import('../../composable').TSize) => boolean;
    };
    id: {
        type: import('vue').PropType<string>;
        default: undefined;
    };
    data: {
        type: import('vue').PropType<NTable.TDefaultRecord[]>;
        default: undefined;
    };
    columns: {
        type: import('vue').PropType<NTable.NColumn.TColumns<NTable.TDefaultRecord>>;
        default: undefined;
    };
    rowKey: {
        type: import('vue').PropType<string | NTable.NRow.TGetRowKey<NTable.TDefaultRecord>>;
        default: string;
    };
    rowClassName: {
        type: import('vue').PropType<string | NTable.NRow.TClassName<NTable.TDefaultRecord>>;
        default: undefined;
    };
    tableLayout: {
        type: import('vue').PropType<NTable.TLayout>;
        default: undefined;
    };
    showHeader: {
        type: import('vue').PropType<boolean>;
        default: undefined;
    };
    sticky: {
        type: import('vue').PropType<boolean | NTable.NSticky.ISticky>;
        default: undefined;
    };
    hovered: {
        type: import('vue').PropType<boolean>;
        default: boolean;
    };
    bordered: {
        type: import('vue').PropType<boolean>;
        default: boolean;
    };
    borderless: {
        type: import('vue').PropType<boolean>;
        default: boolean;
    };
    header: {
        type: import('vue').PropType<NTable.NRender.TPanelRender<NTable.TDefaultRecord>>;
        default: undefined;
    };
    toolbar: {
        type: import('vue').PropType<NTable.NRender.TPanelRender<NTable.TDefaultRecord>>;
        default: undefined;
    };
    footer: {
        type: import('vue').PropType<NTable.NRender.TPanelRender<NTable.TDefaultRecord>>;
        default: undefined;
    };
    components: {
        type: import('vue').PropType<NTable.NCustomize.TableComponents<NTable.TDefaultRecord>>;
        default: undefined;
    };
    customRow: {
        type: import('vue').PropType<NTable.NCustomize.TGetComponentProps<NTable.TDefaultRecord>>;
        default: undefined;
    };
    customHeaderRow: {
        type: import('vue').PropType<NTable.NCustomize.TGetComponentProps<NTable.NColumn.IColumn<NTable.TDefaultRecord>[]>>;
        default: undefined;
    };
    pagination: {
        type: import('vue').PropType<false | NTable.NPagination.IProps>;
        default: undefined;
    };
    scroll: {
        type: import('vue').PropType<NTable.TScroll & {
            scrollToFirstRowOnChange?: boolean;
        }>;
        default: undefined;
    };
    sortDirection: {
        type: import('vue').PropType<NTable.TSortOrder[]>;
        default: undefined;
    };
    showSorterTooltip: {
        type: import('vue').PropType<boolean | import('../../utils').ComponentProps<typeof import('..').CdsTooltip>>;
        default: boolean;
    };
    expandFixed: {
        type: import('vue').PropType<NTable.TFixed>;
        default: undefined;
    };
    expandColumnWidth: {
        type: import('vue').PropType<number>;
        default: undefined;
    };
    expandedRowKeys: {
        type: import('vue').PropType<NTable.TKey[]>;
        default: import('.').ITableProps["expandedRowKeys"];
    };
    rowSelection: {
        type: import('vue').PropType<NTable.NRow.IRowSelection<NTable.TDefaultRecord>>;
        default: undefined;
    };
    defaultExpandedRowKeys: {
        type: import('vue').PropType<NTable.TKey[]>;
        default: import('.').ITableProps["defaultExpandedRowKeys"];
    };
    defaultExpandAllRows: {
        type: import('vue').PropType<boolean>;
        default: boolean;
    };
    canExpandable: {
        type: import('vue').PropType<boolean>;
        default: boolean;
    };
    expandedRowRender: {
        type: import('vue').PropType<NTable.NExpand.TExpandedRowRender<NTable.TDefaultRecord>>;
        default: undefined;
    };
    expandRowByClick: {
        type: import('vue').PropType<boolean>;
        default: boolean;
    };
    expandIconColumnIndex: {
        type: import('vue').PropType<number>;
        default: undefined;
    };
    expandIcon: {
        type: import('vue').PropType<NTable.NExpand.TRenderExpandIcon<NTable.TDefaultRecord>>;
        default: undefined;
    };
    indentSize: {
        type: import('vue').PropType<number>;
        default: number;
    };
    showExpandColumn: {
        type: import('vue').PropType<boolean>;
        default: undefined;
    };
    expandedRowClassName: {
        type: import('vue').PropType<NTable.NRow.TClassName<NTable.TDefaultRecord>>;
        default: undefined;
    };
    childrenColumnName: {
        type: import('vue').PropType<string>;
        default: string;
    };
    rowExpandable: {
        type: import('vue').PropType<NTable.NExpand.IExpandable["rowExpandable"]>;
        default: undefined;
    };
    transformCellText: {
        type: import('vue').PropType<NTable.NCell.TTransformCellText<NTable.TDefaultRecord>>;
        default: undefined;
    };
    getPopupContainer: {
        type: import('vue').PropType<NTable.NCustomize.TGetPopupContainer>;
        default: undefined;
    };
    onChange: {
        type: import('vue').PropType<(pagination: NTable.NPagination.IProps, filters: Record<string, NTable.TFilterValue | null>, sorters: NTable.ISorterResult | NTable.ISorterResult[], extra: NTable.ICurrentData) => void>;
        default: undefined;
    };
    onResizeColumn: {
        type: import('vue').PropType<(width: number, column: NTable.NColumn.IColumn) => void>;
        default: undefined;
    };
    onExpand: {
        type: import('vue').PropType<(expanded: boolean, record: NTable.TDefaultRecord) => void>;
        default: undefined;
    };
    onExpandedRowsChange: {
        type: import('vue').PropType<(expandedKeys: NTable.TKey[]) => void>;
        default: undefined;
    };
}>, {
    table: import('vue').Ref<any, any>;
}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
    /**
     * События изменения пагинации, фильтров или сортировки
     */
    change: (pagination: NTable.NPagination.IProps, filters: Record<string, NTable.TFilterValue | null>, sorter: NTable.ISorterResult | NTable.ISorterResult[], extra: NTable.ICurrentData) => true;
    /**
     * Событие при раскрытии строки
     */
    expand: (expanded: boolean, record: NTable.TDefaultRecord) => true;
    /**
     * Событие изменения раскрытых строк
     */
    expandedRowsChange: (expandedKeys: NTable.TKey) => true;
    /**
     * Событие при изменении размера колонки
     */
    resizeColumn: (width: number, column: NTable.NColumn.IColumn) => true;
    /**
     * Событие текущих раскрытых строк
     */
    'update:expandedRowKeys': (expandedKeys: NTable.TKey[]) => true;
}, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
    theme: {
        type: import('vue').PropType<import('../../composable').TTheme | string>;
        available: readonly ["cdsLight", "cdsDark", "b2bLight", "b2bDark", "promoLight", "promoDark"];
        default: undefined;
    };
    readonly: {
        type: import('vue').PropType<boolean>;
        default: boolean;
    };
    disabled: {
        type: import('vue').PropType<boolean>;
        default: boolean;
    };
    loading: {
        type: import('vue').PropType<boolean>;
        default: boolean;
    };
    locale: {
        type: import('vue').PropType<import('../../locale').TAvailableLocale | import('../../locale').ILocale>;
        default: undefined;
    };
    size: {
        type: import('vue').PropType<import('../../composable').TSize>;
        default: string;
        available: readonly ["xs", "sm", "md", "lg", "xl"];
        validator: (value: import('../../composable').TSize) => boolean;
    };
    id: {
        type: import('vue').PropType<string>;
        default: undefined;
    };
    data: {
        type: import('vue').PropType<NTable.TDefaultRecord[]>;
        default: undefined;
    };
    columns: {
        type: import('vue').PropType<NTable.NColumn.TColumns<NTable.TDefaultRecord>>;
        default: undefined;
    };
    rowKey: {
        type: import('vue').PropType<string | NTable.NRow.TGetRowKey<NTable.TDefaultRecord>>;
        default: string;
    };
    rowClassName: {
        type: import('vue').PropType<string | NTable.NRow.TClassName<NTable.TDefaultRecord>>;
        default: undefined;
    };
    tableLayout: {
        type: import('vue').PropType<NTable.TLayout>;
        default: undefined;
    };
    showHeader: {
        type: import('vue').PropType<boolean>;
        default: undefined;
    };
    sticky: {
        type: import('vue').PropType<boolean | NTable.NSticky.ISticky>;
        default: undefined;
    };
    hovered: {
        type: import('vue').PropType<boolean>;
        default: boolean;
    };
    bordered: {
        type: import('vue').PropType<boolean>;
        default: boolean;
    };
    borderless: {
        type: import('vue').PropType<boolean>;
        default: boolean;
    };
    header: {
        type: import('vue').PropType<NTable.NRender.TPanelRender<NTable.TDefaultRecord>>;
        default: undefined;
    };
    toolbar: {
        type: import('vue').PropType<NTable.NRender.TPanelRender<NTable.TDefaultRecord>>;
        default: undefined;
    };
    footer: {
        type: import('vue').PropType<NTable.NRender.TPanelRender<NTable.TDefaultRecord>>;
        default: undefined;
    };
    components: {
        type: import('vue').PropType<NTable.NCustomize.TableComponents<NTable.TDefaultRecord>>;
        default: undefined;
    };
    customRow: {
        type: import('vue').PropType<NTable.NCustomize.TGetComponentProps<NTable.TDefaultRecord>>;
        default: undefined;
    };
    customHeaderRow: {
        type: import('vue').PropType<NTable.NCustomize.TGetComponentProps<NTable.NColumn.IColumn<NTable.TDefaultRecord>[]>>;
        default: undefined;
    };
    pagination: {
        type: import('vue').PropType<false | NTable.NPagination.IProps>;
        default: undefined;
    };
    scroll: {
        type: import('vue').PropType<NTable.TScroll & {
            scrollToFirstRowOnChange?: boolean;
        }>;
        default: undefined;
    };
    sortDirection: {
        type: import('vue').PropType<NTable.TSortOrder[]>;
        default: undefined;
    };
    showSorterTooltip: {
        type: import('vue').PropType<boolean | import('../../utils').ComponentProps<typeof import('..').CdsTooltip>>;
        default: boolean;
    };
    expandFixed: {
        type: import('vue').PropType<NTable.TFixed>;
        default: undefined;
    };
    expandColumnWidth: {
        type: import('vue').PropType<number>;
        default: undefined;
    };
    expandedRowKeys: {
        type: import('vue').PropType<NTable.TKey[]>;
        default: import('.').ITableProps["expandedRowKeys"];
    };
    rowSelection: {
        type: import('vue').PropType<NTable.NRow.IRowSelection<NTable.TDefaultRecord>>;
        default: undefined;
    };
    defaultExpandedRowKeys: {
        type: import('vue').PropType<NTable.TKey[]>;
        default: import('.').ITableProps["defaultExpandedRowKeys"];
    };
    defaultExpandAllRows: {
        type: import('vue').PropType<boolean>;
        default: boolean;
    };
    canExpandable: {
        type: import('vue').PropType<boolean>;
        default: boolean;
    };
    expandedRowRender: {
        type: import('vue').PropType<NTable.NExpand.TExpandedRowRender<NTable.TDefaultRecord>>;
        default: undefined;
    };
    expandRowByClick: {
        type: import('vue').PropType<boolean>;
        default: boolean;
    };
    expandIconColumnIndex: {
        type: import('vue').PropType<number>;
        default: undefined;
    };
    expandIcon: {
        type: import('vue').PropType<NTable.NExpand.TRenderExpandIcon<NTable.TDefaultRecord>>;
        default: undefined;
    };
    indentSize: {
        type: import('vue').PropType<number>;
        default: number;
    };
    showExpandColumn: {
        type: import('vue').PropType<boolean>;
        default: undefined;
    };
    expandedRowClassName: {
        type: import('vue').PropType<NTable.NRow.TClassName<NTable.TDefaultRecord>>;
        default: undefined;
    };
    childrenColumnName: {
        type: import('vue').PropType<string>;
        default: string;
    };
    rowExpandable: {
        type: import('vue').PropType<NTable.NExpand.IExpandable["rowExpandable"]>;
        default: undefined;
    };
    transformCellText: {
        type: import('vue').PropType<NTable.NCell.TTransformCellText<NTable.TDefaultRecord>>;
        default: undefined;
    };
    getPopupContainer: {
        type: import('vue').PropType<NTable.NCustomize.TGetPopupContainer>;
        default: undefined;
    };
    onChange: {
        type: import('vue').PropType<(pagination: NTable.NPagination.IProps, filters: Record<string, NTable.TFilterValue | null>, sorters: NTable.ISorterResult | NTable.ISorterResult[], extra: NTable.ICurrentData) => void>;
        default: undefined;
    };
    onResizeColumn: {
        type: import('vue').PropType<(width: number, column: NTable.NColumn.IColumn) => void>;
        default: undefined;
    };
    onExpand: {
        type: import('vue').PropType<(expanded: boolean, record: NTable.TDefaultRecord) => void>;
        default: undefined;
    };
    onExpandedRowsChange: {
        type: import('vue').PropType<(expandedKeys: NTable.TKey[]) => void>;
        default: undefined;
    };
}>> & Readonly<{
    onExpand?: ((expanded: boolean, record: any) => any) | undefined;
    onChange?: ((pagination: NTable.NPagination.IProps, filters: Record<string, NTable.TFilterValue | null>, sorter: NTable.ISorterResult<any> | NTable.ISorterResult<any>[], extra: NTable.ICurrentData<any>) => any) | undefined;
    onExpandedRowsChange?: ((expandedKeys: NTable.TKey) => any) | undefined;
    "onUpdate:expandedRowKeys"?: ((expandedKeys: NTable.TKey[]) => any) | undefined;
    onResizeColumn?: ((width: number, column: NTable.NColumn.IColumn<any>) => any) | undefined;
}>, {
    size: "xs" | "sm" | "md" | "lg" | "xl";
    loading: boolean;
    disabled: boolean;
    readonly: boolean;
    id: string;
    onChange: (pagination: NTable.NPagination.IProps, filters: Record<string, NTable.TFilterValue | null>, sorters: NTable.ISorterResult | NTable.ISorterResult[], extra: NTable.ICurrentData) => void;
    scroll: NTable.TScroll & {
        scrollToFirstRowOnChange?: boolean;
    };
    data: any[];
    footer: NTable.NRender.TPanelRender<any>;
    header: NTable.NRender.TPanelRender<any>;
    components: NTable.NCustomize.TableComponents<any>;
    expandIcon: NTable.NExpand.TRenderExpandIcon<any>;
    theme: string;
    rowExpandable: ((record: any) => boolean) | undefined;
    columns: NTable.NColumn.TColumns<any>;
    rowKey: string | NTable.NRow.TGetRowKey<any>;
    rowClassName: string | NTable.NRow.TClassName<any>;
    tableLayout: NTable.TLayout;
    showHeader: boolean;
    sticky: boolean | NTable.NSticky.ISticky;
    hovered: boolean;
    bordered: boolean;
    borderless: boolean;
    toolbar: NTable.NRender.TPanelRender<any>;
    customRow: NTable.NCustomize.TGetComponentProps<any>;
    customHeaderRow: NTable.NCustomize.TGetComponentProps<NTable.NColumn.IColumn<any>[]>;
    pagination: false | NTable.NPagination.IProps;
    sortDirection: string[];
    showSorterTooltip: boolean | Omit<Partial<{
        text: string | number;
        location: NonNullable<import('../../utils').TAnchor>;
        disabled: boolean;
        id: string;
        modelValue: boolean;
        transition: NonNullable<string | boolean | (import('vue').TransitionProps & {
            component?: import('vue').Component;
        })>;
        attach: string | boolean | Element;
        contained: boolean;
        persistent: boolean;
        scrim: NonNullable<string | boolean>;
        closeOnBack: boolean;
        zIndex: string | number;
        contentClasses: string | string[] | Record<string, boolean>;
        contentProps: Record<string, unknown>;
        noClickAnimation: boolean;
        opacity: string | number;
        eager: boolean;
        closeDelay: string | number;
        openDelay: string | number;
        height: string | number;
        width: string | number;
        maxHeight: string | number;
        maxWidth: string | number;
        minHeight: string | number;
        minWidth: NonNullable<string | number>;
        activatorProps: Record<string, any>;
        activator: string | Element | import('vue').ComponentPublicInstance;
        theme: string;
        origin: NonNullable<import('../../utils').TAnchor | "auto" | "overlap">;
        target: Element | "parent" | (string & {}) | import('vue').ComponentPublicInstance | "cursor" | [x: number, y: number] | undefined;
        offset: NonNullable<string | number | number[]>;
        openOnClick: NonNullable<boolean | undefined>;
        openOnHover: boolean;
        openOnFocus: boolean | undefined;
        closeOnContentClick: boolean;
        locationStrategy: NonNullable<"static" | "connected" | ((data: import('../CdsOverlay/composable').ILocationStrategyData, props: import('../CdsOverlay/composable').ILocationStrategyProps, contentStyles: import('vue').Ref<Record<string, string>>) => undefined | {
            updateLocation: (event: Event | HTMLElement[]) => void;
        })>;
        scrollStrategy: NonNullable<"close" | "none" | "block" | "reposition" | ((data: import('../CdsOverlay/composable').IScrollStrategyData, props: import('../CdsOverlay/composable').IScrollStrategyProps, scope: import('vue').EffectScope) => void)>;
        hideArrow: boolean;
    }> & Omit<{
        readonly location: NonNullable<import('../../utils').TAnchor>;
        readonly disabled: boolean;
        readonly modelValue: boolean;
        readonly transition: NonNullable<string | boolean | (import('vue').TransitionProps & {
            component?: import('vue').Component;
        })>;
        readonly attach: string | boolean | Element;
        readonly contained: boolean;
        readonly persistent: boolean;
        readonly scrim: NonNullable<string | boolean>;
        readonly closeOnBack: boolean;
        readonly zIndex: string | number;
        readonly contentClasses: string | string[] | Record<string, boolean>;
        readonly contentProps: Record<string, unknown>;
        readonly noClickAnimation: boolean;
        readonly eager: boolean;
        readonly closeDelay: string | number;
        readonly openDelay: string | number;
        readonly height: string | number;
        readonly width: string | number;
        readonly maxHeight: string | number;
        readonly maxWidth: string | number;
        readonly minHeight: string | number;
        readonly minWidth: NonNullable<string | number>;
        readonly activatorProps: Record<string, any>;
        readonly activator: string | Element | import('vue').ComponentPublicInstance;
        readonly origin: NonNullable<import('../../utils').TAnchor | "auto" | "overlap">;
        readonly offset: NonNullable<string | number | number[]>;
        readonly openOnClick: NonNullable<boolean | undefined>;
        readonly openOnHover: boolean;
        readonly closeOnContentClick: boolean;
        readonly locationStrategy: NonNullable<"static" | "connected" | ((data: import('../CdsOverlay/composable').ILocationStrategyData, props: import('../CdsOverlay/composable').ILocationStrategyProps, contentStyles: import('vue').Ref<Record<string, string>>) => undefined | {
            updateLocation: (event: Event | HTMLElement[]) => void;
        })>;
        readonly scrollStrategy: NonNullable<"close" | "none" | "block" | "reposition" | ((data: import('../CdsOverlay/composable').IScrollStrategyData, props: import('../CdsOverlay/composable').IScrollStrategyProps, scope: import('vue').EffectScope) => void)>;
        readonly hideArrow: boolean;
        readonly text?: string | number | undefined;
        readonly id?: string | undefined;
        readonly opacity?: string | number | undefined;
        readonly theme?: string | undefined;
        readonly target?: Element | "parent" | (string & {}) | import('vue').ComponentPublicInstance | "cursor" | [x: number, y: number] | undefined;
        readonly openOnFocus?: boolean | undefined;
        readonly "onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
    } & import('vue').VNodeProps & import('vue').AllowedComponentProps & import('vue').ComponentCustomProps, "text" | "location" | "disabled" | "id" | "modelValue" | "transition" | "attach" | "contained" | "persistent" | "scrim" | "closeOnBack" | "zIndex" | "contentClasses" | "contentProps" | "noClickAnimation" | "opacity" | "eager" | "closeDelay" | "openDelay" | "height" | "width" | "maxHeight" | "maxWidth" | "minHeight" | "minWidth" | "activatorProps" | "activator" | "theme" | "origin" | "target" | "offset" | "openOnClick" | "openOnHover" | "openOnFocus" | "closeOnContentClick" | "locationStrategy" | "scrollStrategy" | "hideArrow">, keyof import('vue').VNodeProps | keyof import('vue').AllowedComponentProps>;
    expandFixed: NTable.TFixed;
    expandColumnWidth: number;
    expandedRowKeys: NTable.TKey[];
    rowSelection: NTable.NRow.IRowSelection<any>;
    defaultExpandedRowKeys: NTable.TKey[];
    defaultExpandAllRows: boolean;
    canExpandable: boolean;
    expandedRowRender: NTable.NExpand.TExpandedRowRender<any>;
    expandRowByClick: boolean;
    expandIconColumnIndex: number;
    indentSize: number;
    showExpandColumn: boolean;
    expandedRowClassName: NTable.NRow.TClassName<any>;
    childrenColumnName: string;
    transformCellText: NTable.NCell.TTransformCellText<any>;
    getPopupContainer: NTable.NCustomize.TGetPopupContainer;
    onResizeColumn: (width: number, column: NTable.NColumn.IColumn) => void;
    onExpand: (expanded: boolean, record: NTable.TDefaultRecord) => void;
    onExpandedRowsChange: (expandedKeys: NTable.TKey[]) => void;
    locale: import('../../locale').ILocale | "ru" | "en";
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
export default _default;
