import { ControlCode } from './constant';
import { CJT188Status, PacketUnpacking } from './interface';
/** Uint8Array转十六进制字符串方法参数 */
interface Uint8ArrayToHexStrOptions {
    /** 分隔符 */
    separator?: string;
    /** 是否大写，默认小写 */
    upperCase?: boolean;
}
export declare class Util {
    /**
     * 获取唤醒前缀十六进制字符串
     * @param wakeUpCode 唤醒码
     * @param wakeUpLength 唤醒长度
     * @returns 唤醒前缀十六进制字符串
     */
    static getWakeUpHex(wakeUpCode: string, wakeUpLength: number): string;
    /**
     * 生成校验码
     * @param hexStr 校验运算的十六进制字符串
     * @returns 校验码
     */
    static getCS(hexStr: string): string;
    /**
     * 将十六进制字符串格式转换成Uint8Array格式
     * @param hexStr 十六进制字符串
     * @returns Uint8Array格式内容
     */
    static hexToUint8Array(hexStr: string): Uint8Array;
    /**
     * 将Uint8Array数据转换成十六进制字符串
     * @param data Uint8Array数据
     * @param separator 十六进制分隔符
     * @returns 转换后的十六进制字符串
     */
    static uint8ArrayToHexStr(data: Uint8Array, options?: Uint8ArrayToHexStrOptions): string;
    /**
     * BCD解码
     * @param bcdStr 原始BCD字符串，小端模式
     * @param format BCD编码格式
     * @returns 解码信息
     */
    static bcdDecode(bcdStr: string, format: string): number | string;
    /**
     * 从站返回数据解包
     * @param data 从站返回的原始数据包
     * @param wakeUpCode 唤醒码
     * @param controlCode 下发指令的控制码
     * @returns 解包结果
     */
    static unpacking(data: Uint8Array, wakeUpCode: string, controlCode: ControlCode): PacketUnpacking;
    /**
     * 解析状态内容
     * @param statusCode 状态的第一个字节值
     * @returns 2004版状态格式
     */
    static resolveStatus(statusCode: number): CJT188Status;
}
export {};
