import { RepeatOption } from "./RepeatOption";
/**
 * Product base units
 * 1 - 9
 */
export declare enum ProductBaseUnit {
    /**
     * Picese
     * 件
     */
    PC = 1,
    /**
     * Set
     * 套
     */
    SET = 2
}
declare enum ProductAssetUnit {
    /**
     * Time
     * 次
     */
    TIME = 99,
    /**
     * Money
     * 储值
     */
    MONEY = 100
}
/**
 * Product weight units
 * Range 40 - 49
 */
export declare enum ProductWeightUnit {
    /**
     * Gram
     * 克
     */
    GRAM = 40,
    /**
     * Half Kg
     * 斤
     */
    JIN = 41,
    /**
     * Kilogram
     * 千克
     */
    KILOGRAM = 42,
    /**
     * Ton
     * 吨
     */
    TON = 49
}
/**
 * Product other units
 */
export declare enum ProductOtherUnit {
    /**
     * Cubic meter
     * 立方米
     */
    M3 = 50
}
/**
 * Product units enum
 * Repeat options take range 10 - 39
 * @see com.etsoo.CoreFramework.Business.ProductUnit
 */
export declare const ProductUnit: {
    [x: number]: string;
    M3: ProductOtherUnit.M3;
    GRAM: ProductWeightUnit.GRAM;
    JIN: ProductWeightUnit.JIN;
    KILOGRAM: ProductWeightUnit.KILOGRAM;
    TON: ProductWeightUnit.TON;
    TIME: ProductAssetUnit.TIME;
    MONEY: ProductAssetUnit.MONEY;
    HOUR: RepeatOption.HOUR;
    DAY: RepeatOption.DAY;
    YEAR: RepeatOption.YEAR;
    WEEK: RepeatOption.WEEK;
    FORTNIGHT: RepeatOption.FORTNIGHT;
    FOURWEEK: RepeatOption.FOURWEEK;
    MONTH: RepeatOption.MONTH;
    BIMONTH: RepeatOption.BIMONTH;
    QUATER: RepeatOption.QUATER;
    HALFYEAR: RepeatOption.HALFYEAR;
    PC: ProductBaseUnit.PC;
    SET: ProductBaseUnit.SET;
};
export type ProductUnit = ProductBaseUnit | RepeatOption | ProductAssetUnit | ProductWeightUnit | ProductOtherUnit;
/**
 * Product asset units enum
 */
export declare const AssetUnits: {
    [x: number]: string;
    TIME: ProductAssetUnit.TIME;
    MONEY: ProductAssetUnit.MONEY;
    HOUR: RepeatOption.HOUR;
    DAY: RepeatOption.DAY;
    YEAR: RepeatOption.YEAR;
    WEEK: RepeatOption.WEEK;
    FORTNIGHT: RepeatOption.FORTNIGHT;
    FOURWEEK: RepeatOption.FOURWEEK;
    MONTH: RepeatOption.MONTH;
    BIMONTH: RepeatOption.BIMONTH;
    QUATER: RepeatOption.QUATER;
    HALFYEAR: RepeatOption.HALFYEAR;
};
export type AssetUnits = RepeatOption | ProductAssetUnit;
export {};
