import type { Dayjs } from 'dayjs';
/** dayjs对象格式化为字符串时间 */
export declare const formatDateToStr: (date: Dayjs[]) => string | string[];
export declare const getDefaultStartParam: () => string | string[];
export declare const formatBookingList: (bookingList: any[]) => any[];
export declare const getNextTimeSlice: (sliceMinutes: number) => Dayjs;
export declare const getDisabledEdit: ({ shop_discount, bookings, payment_status }: any) => boolean;
export declare const formatOptions: (detail: any) => any;
export declare const formatHolder: (detail: any) => any;
export declare const restoreProductOtherData: (data: any) => {
    product_id: any;
    option: any;
    bundle: any;
    product_variant_id: any;
    quantity: number;
} | undefined;
export declare const isSameProduct: (a: any, b: any) => boolean;
export declare const addService: (list: any[], addItem: any, state: any, isMultiDay?: boolean) => {
    list: any[];
    count: number;
    quantity?: undefined;
} | {
    list: any[];
    quantity: any;
    count?: undefined;
};
export declare const addServiceScroll: (rowKey: string, cacheItem: any) => void;
export declare const getCartProductOverlay: (state: any) => any;
export declare const getIsOverlayProduct: (item: any, state: any) => any;
export declare const getIsShowNumber: (item: any, state: any) => any;
export declare const genServiceKey: (item: any) => string;
export declare const genHolderKey: (item: any) => string;
export declare const getIsParallelResourcesBooking: (record: any) => boolean;
declare type ScanData = {
    type: string;
    status: 'success' | 'failed';
    scanType: 'nfc' | 'scanner';
    scanCode: string;
    result: {
        searchType: 'customer' | 'wallet' | 'walletPass' | 'product' | 'local_product' | 'order';
        response: {
            status: boolean;
            code: number;
            message: string;
            data: any;
        };
    };
};
export declare const formatScanCustomer: (data: ScanData) => {
    searchType: "customer" | "order" | "product" | "wallet" | "walletPass" | "local_product";
    data: any;
    scanCode: string;
} | null;
export declare const formatScanGlobal: (data: ScanData) => {
    searchType: "wallet";
    data: any;
    scanCode: string;
} | {
    searchType: "walletPass";
    data: any;
    scanCode: string;
} | {
    searchType: "product" | "local_product";
    data: any;
    scanCode: string;
} | {
    searchType: "order";
    data: any;
    scanCode: string;
} | null | undefined;
export declare const createSimpleCacheItem: (item: any, e: any, state: any) => any;
export declare const getBookingTicketKey: (osKey: string) => string;
export declare const getShopDiscountKey: (osKey: string) => string;
export declare const rulesHooks: {
    getProduct(product: Record<string, any>): {
        booking_id: any;
        id: any;
        _id: any;
        price: any;
        total: any;
        discount_list: any;
        origin_total: any;
        num: any;
        quantity: any;
        vouchersApplicable: any;
        holder_id: any;
        isNormalProduct: any;
        startDate: any;
        bundle: any;
        options: any;
        main_product_selling_price: any;
        inPromotion: any;
        _promotion: any;
    };
    setProduct(product: Record<string, any>, values: {
        total: number;
        discount_list: any[];
        price: number;
        quantity: number;
        _id?: string;
    }): {
        _id: any;
        discount_list: any[];
        _extend: any;
    };
};
export { getCache, setCache, clearCache, clearAllCache, clearAllCacheByOsKey, getProductCache, setProductCache, clearProductCache, clearAllProductCache, getBoardConfigCache, setBoardConfigCache, clearBoardConfigCache, } from './productCache';
export type { CacheType } from './productCache';
export { getEffectiveMenuListIds, normalizeMenuListIds } from './menuListIds';
