import { FCloudDataTypeService } from './fcloud-data-type.service';
import { FBoxDataTypeService } from './fbox-data-type.service';
export declare class DataTypeService {
    private fcloudDataTypeService;
    private fboxDataTypeService;
    constructor(fcloudDataTypeService: FCloudDataTypeService, fboxDataTypeService: FBoxDataTypeService);
    getValueType(version: number, id: number): string;
    getValuePattern(version: number, id: number): "^[01]+$" | "^[+-]?[0-9]*(\\.[0-9]*)?$" | "^[0-9a-fA-F]+$";
    isHexType(version: number, id: number): boolean;
    isBinaryType(version: number, id: number): boolean;
    isHexOrBinaryType(version: number, id: number): boolean;
    isFloat(version: number, id: number): boolean;
    /**
     * 获取数据型号最大长度
     * @param id fbox数据类型
     */
    getValueMaxLength(version: number, dataType: number, fBoxDataType: number): number;
    /**
     * 是否支持小数位
     * @param version
     * @param id
     */
    isSupportFractionDigit(version: number, id: number): boolean;
    /**
     * 是否为有符号数
     * @param version
     * @param id
     */
    isSignedType(version: number, id: number): boolean;
    /**
     * 是否支持数值运算
     * @param version
     * @param id
     */
    isSupportNumericalOperation(version: number, id: number): boolean;
    /**
    * 数据转换成10进制
    * @param version
    * @param value
    * @param id
    */
    formatToDecimal(version: number, value: any, id: number): any;
    /**
       * 获取数据型号最小值
       * @param id
       * @param? integerDigits
       * @param? fractionDigits
       */
    getMinValue(version: number, dataType: number, fBoxDataType: number, integerDigits?: number, fractionDigits?: number): number;
    /**
       * 获取数据型号最大值
       * @param id
       * @param? integerDigits
       * @param? fractionDigits
       */
    getMaxValue(version: number, dataType: number, fBoxDataType: number, integerDigits?: number, fractionDigits?: number): number;
}
