import { RowContext, TableFixed } from '@oinone/kunlun-vue-ui';
import { ActiveRecordsWidgetProps } from '@oinone/kunlun-vue-widget';
import { VNode } from 'vue';
import type { VxeTableConstructor, VxeTableDefines, VxeTablePrivateMethods } from 'vxe-table';
import { UserPreferEventManager } from '../../service';
import { UserTablePrefer } from '../../typing';
import { BaseTableColumnWidget } from './BaseTableColumnWidget';
export declare abstract class BaseTableQuickOperationColumnWidget<Value = unknown, Props extends ActiveRecordsWidgetProps = ActiveRecordsWidgetProps> extends BaseTableColumnWidget<Value, Props> {
    renderHeaderSlot(context: RowContext): VNode[] | string;
    protected renderQuickOperation(context: RowContext): VNode | undefined;
    protected handleOrderByASC(table: VxeTableConstructor & VxeTablePrivateMethods, column: VxeTableDefines.ColumnInfo): void;
    protected handleOrderByDESC(table: VxeTableConstructor & VxeTablePrivateMethods, column: VxeTableDefines.ColumnInfo): void;
    protected handleClearOrder(table: VxeTableConstructor & VxeTablePrivateMethods, column: VxeTableDefines.ColumnInfo): void;
    protected handleFreezeLeft(table: VxeTableConstructor & VxeTablePrivateMethods, column: VxeTableDefines.ColumnInfo): Promise<void>;
    protected handleFreezeRight(table: VxeTableConstructor & VxeTablePrivateMethods, column: VxeTableDefines.ColumnInfo): Promise<void>;
    protected handleClearFreeze(table: VxeTableConstructor & VxeTablePrivateMethods, column: VxeTableDefines.ColumnInfo): Promise<void>;
    protected handleClearAllFreeze(fixed?: TableFixed): Promise<void>;
    protected handleHide(table: VxeTableConstructor & VxeTablePrivateMethods, column: VxeTableDefines.ColumnInfo): Promise<void>;
    protected consumerUserPreferManager<R>(fn: (userPreferManager: UserPreferEventManager, userPrefer: UserTablePrefer) => R): R | undefined;
}
