import type { ButtonProps, MenuProps } from 'antd';
import type { SaleDetailBlockProps, SaleDetailDataSource } from '../types';
export declare type SaleDetailActionKey = 'edit' | 'print-receipts' | 'cancel' | 'checkout';
export interface SaleDetailActionConfig {
    isMore?: boolean;
    menuData?: MenuProps['items'];
    row?: number;
    order?: number;
    hidden?: boolean;
    buttonProps?: ButtonProps;
}
export declare type SaleDetailActionInput = SaleDetailActionKey | ({
    name: SaleDetailActionKey;
} & SaleDetailActionConfig);
export interface SaleDetailActionButtonItem {
    id: string;
    isMore?: boolean;
    menuData?: MenuProps['items'];
    buttonProps?: ButtonProps;
    row?: number;
    order?: number;
    hidden?: boolean;
}
export declare type SaleDetailActionButtonGroupList = SaleDetailActionButtonItem[][];
export interface UseSaleDetailActionsOptions extends SaleDetailBlockProps<SaleDetailDataSource> {
    actions?: SaleDetailActionInput[];
}
export declare function useEditActionItem({ dataSource, }: SaleDetailBlockProps<SaleDetailDataSource>): SaleDetailActionButtonItem;
export declare function usePrintReceiptsActionItem({ dataSource, }: SaleDetailBlockProps<SaleDetailDataSource>): SaleDetailActionButtonItem;
export declare function useCancelActionItem({ dataSource, }: SaleDetailBlockProps<SaleDetailDataSource>): SaleDetailActionButtonItem;
export declare function useCheckoutActionItem({ dataSource, }: SaleDetailBlockProps<SaleDetailDataSource>): SaleDetailActionButtonItem;
export declare function useSaleDetailActions({ dataSource, actions, }: UseSaleDetailActionsOptions): SaleDetailActionButtonGroupList;
