import { Ref } from 'vue';
import { DataTableHeaders } from './types';
interface UsePinnedColumnsOptions {
    displayHeaders: Ref<DataTableHeaders[] | undefined>;
    reactiveColumnWidths: Ref<Record<string, number | string>>;
    pinnedColumns: Ref<Array<string | {
        key: string;
        side?: 'left' | 'right';
    }> | undefined>;
    pinnedColumnKey: Ref<string | undefined>;
    stickySelect: Ref<boolean>;
    showSelect: Ref<boolean>;
    showSelectSingle: Ref<boolean>;
    tableRef: Ref<{
        $el?: Element;
    } | undefined>;
}
export declare function usePinnedColumns({ displayHeaders, reactiveColumnWidths, pinnedColumns, pinnedColumnKey, stickySelect, showSelect, showSelectSingle, tableRef, }: UsePinnedColumnsOptions): {
    showPinnedLeftShadow: Ref<boolean, boolean>;
    showPinnedRightShadow: Ref<boolean, boolean>;
    hasPinnedSelectLeft: import('vue').ComputedRef<boolean>;
    pinnedMeta: import('vue').ComputedRef<{
        left: Record<string, number>;
        right: Record<string, number>;
        totalLeft: number;
        totalRight: number;
    }>;
    pinnedEdgeVars: import('vue').ComputedRef<Record<string, string>>;
    displayHeadersWithPinned: import('vue').ComputedRef<DataTableHeaders[] | undefined>;
};
export {};
