import { PropType } from 'vue';
import { DishTypeEnum, PriceTypeEnum } from '../dishes-common';
import { SkuList, SkuMap, GoodsSkuValueItem } from './type';
import { formatToMoney } from '../../utils/format';
import { ResDishItemsMesType, ResStockDishMapType } from '../dishes-common/types/dishes';
import { PureObject } from '../../types';

declare const _default: import('vue').DefineComponent<{
    visible: {
        type: BooleanConstructor;
        default: boolean;
    };
    dishItem: {
        type: PropType<ResDishItemsMesType>;
        default: () => {};
    };
    boolAddDish: {
        type: BooleanConstructor;
        default: boolean;
    };
    stockDishMap: {
        type: PropType<ResStockDishMapType>;
        default: () => {};
    };
    currentDishNum: {
        type: NumberConstructor;
        default: number;
    };
    dishResultMap: {
        type: PropType<PureObject<ResDishItemsMesType>>;
        default: () => {};
    };
}, {
    PriceTypeEnum: typeof PriceTypeEnum;
    isCombination: import('vue').ComputedRef<boolean>;
    isCurrentPrice: import('vue').ComputedRef<boolean | undefined>;
    editData: import('vue').Ref<{
        dishType?: DishTypeEnum | undefined;
        goodsImg?: string | undefined;
        name?: string | undefined;
        shortCode?: string | undefined;
        dishClassifyId?: string | undefined;
        dishClassifyName?: string | undefined;
        priceTypeList?: number[] | undefined;
        unitName?: string | undefined;
        goodsId?: string | undefined;
        priceDetailList?: {
            goodsSkuValueList?: {
                goodsSkuValueClassifyName: string;
                goodsSkuValueClassifyId: string;
                goodsSkuValueName: string;
                goodsSkuValueId: string;
            }[] | undefined;
            price?: number | undefined;
            skuId?: string | undefined;
            boolPutaway?: boolean | undefined;
            actualInvSkuId?: string | undefined;
            storeGoodsName?: string | undefined;
            storeId?: string | undefined;
            minimum?: number | undefined;
        }[] | undefined;
        dishComboDetailList?: {
            dishName?: string | undefined;
            price?: number | undefined;
            shortCode?: string | undefined;
            skuId?: string | undefined;
            goodsSkuValueList?: {
                goodsSkuValueClassifyName: string;
                goodsSkuValueClassifyId: string;
                goodsSkuValueName: string;
                goodsSkuValueId: string;
            }[] | undefined;
            boolDefaultImg?: boolean | undefined;
            boolDiscount?: boolean | undefined;
            boolHandsel?: boolean | undefined;
            count?: number | undefined;
            boolPutaway?: boolean | undefined;
            priceType?: number | undefined;
            priceTypeList?: number[] | undefined;
            id?: string | undefined;
            num?: number | undefined;
            orderItemDetailId?: string | undefined;
            boolFirstAddBeyondStock?: boolean | undefined;
            stockNum?: number | undefined;
            goodsSkuValueName?: string[] | undefined;
            actualInvSkuId?: string | undefined;
            uniqueId?: string | undefined;
            goodsSkuId?: string | undefined;
            goodsSkuName?: string | undefined;
            dishId?: string | undefined;
            amount?: number | undefined;
            originalAmount?: number | undefined;
            minimum?: number | undefined;
        }[] | undefined;
        minPrice?: number | undefined;
        num: number;
        weight: number;
        boolDiscount?: boolean | undefined;
        boolHandsel?: boolean | undefined;
        boolMultiFormat?: boolean | undefined;
        minimum?: number | undefined;
        requiredType?: (0 | 1 | 2) | undefined;
        requiredNum?: number | undefined;
        labelId?: string | undefined;
        remark?: string | undefined;
        skuId?: string | undefined;
        goodsName?: string | undefined;
        boolRequired?: boolean | undefined;
        detailList?: {
            tagNum?: number | undefined;
            actualAmount?: number | undefined;
            goodsCount?: number | undefined;
            goodsId?: string | undefined;
            weight?: number | undefined;
            goodsSkuValueList?: {
                goodsSkuValueClassifyName: string;
                goodsSkuValueClassifyId: string;
                goodsSkuValueName: string;
                goodsSkuValueId: string;
            }[] | undefined;
            actualInvSkuId?: string | undefined;
            uniqueId?: string | undefined;
            goodsSkuId?: string | undefined;
            goodsSkuName?: string | undefined;
            dishId?: string | undefined;
            amount?: number | undefined;
            originalAmount?: number | undefined;
            minimum?: number | undefined;
        }[] | undefined;
        dishName?: string | undefined;
        count?: number | undefined;
        price?: number | undefined;
        type?: import('../dishes-common').DishTypeServiceEnum | undefined;
        selected?: boolean | undefined;
        dishComboDetail?: string | undefined;
        customPrice?: number | undefined;
        version?: string | undefined;
        customAmount?: number | undefined;
        discountAmount?: number | undefined;
        originalAmount?: number | undefined;
        isDiscount?: boolean | undefined;
        isCustomize?: boolean | undefined;
        amountType?: string | undefined;
        actualInvSkuId?: string | undefined;
        uniqueId?: string | undefined;
        goodsSkuId?: string | undefined;
        goodsSkuName?: string | undefined;
        dishId?: string | undefined;
        amount?: number | undefined;
    }>;
    typeName: import('vue').ComputedRef<"套餐" | "菜品">;
    stockNum: import('vue').ComputedRef<number | undefined>;
    skuMap: import('vue').Ref<Record<string, SkuMap>>;
    skuList: import('vue').Ref<{
        classifyId: string;
        classifyName: string;
        list: {
            [x: string]: any;
            value: string;
            keyId: string;
            price?: number | undefined;
            availableSkuIds?: string[] | undefined;
        }[];
    }[]>;
    curMinimum: import('vue').ComputedRef<number>;
    isWeightPrice: import('vue').ComputedRef<boolean | undefined>;
    formatToMoney: typeof formatToMoney;
    changeFormatItem: (item: SkuList, index: number) => void;
    submitDishesDetails: () => void;
    dishStockClassAndName: import('vue').ComputedRef<{
        className: string;
        stockNumStr: string;
    }>;
    getDishWeightOrNumKey: (priceTypeList?: number[]) => "weight" | "num";
    activeKeyIds: import('vue').Ref<string[]>;
    formRef: import('vue').Ref<any>;
    checkSkuIdAvailable: (skuId: string, index: number) => boolean;
    getGoodsSkuValueNames: (list: GoodsSkuValueItem[]) => string;
    dishMaxNum: import('vue').ComputedRef<number>;
    curSkuDetail: import('vue').ComputedRef<{
        goodsSkuValueList?: {
            goodsSkuValueClassifyName: string;
            goodsSkuValueClassifyId: string;
            goodsSkuValueName: string;
            goodsSkuValueId: string;
        }[] | undefined;
        price?: number | undefined;
        skuId?: string | undefined;
        boolPutaway?: boolean | undefined;
        actualInvSkuId?: string | undefined;
        storeGoodsName?: string | undefined;
        storeId?: string | undefined;
        minimum?: number | undefined;
    } | undefined>;
    handleInputNumberChange(): void;
}, unknown, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, ("update:visible" | "dishesDetailsSubmit")[], "update:visible" | "dishesDetailsSubmit", import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
    visible: {
        type: BooleanConstructor;
        default: boolean;
    };
    dishItem: {
        type: PropType<ResDishItemsMesType>;
        default: () => {};
    };
    boolAddDish: {
        type: BooleanConstructor;
        default: boolean;
    };
    stockDishMap: {
        type: PropType<ResStockDishMapType>;
        default: () => {};
    };
    currentDishNum: {
        type: NumberConstructor;
        default: number;
    };
    dishResultMap: {
        type: PropType<PureObject<ResDishItemsMesType>>;
        default: () => {};
    };
}>> & {
    "onUpdate:visible"?: ((...args: any[]) => any) | undefined;
    onDishesDetailsSubmit?: ((...args: any[]) => any) | undefined;
}, {
    visible: boolean;
    dishItem: ResDishItemsMesType;
    boolAddDish: boolean;
    stockDishMap: ResStockDishMapType;
    currentDishNum: number;
    dishResultMap: PureObject<ResDishItemsMesType>;
}, {}>;
export default _default;
