import { TargetProtocol } from '@iotize/tap';
import { VariableType } from '@iotize/tap/service/impl/variable';
export interface DBIOTItemConfig {
    tap?: {
        address?: number;
        valueAcquisitionPeriod?: number;
    };
    encoding?: {
        bitLength?: number;
        scaling?: number;
        offset?: number;
    };
    dashboard?: {
        name?: string;
        unit?: string;
        offset?: number;
        scaling?: number;
        byteOrder?: number[];
        readable?: boolean;
        writable?: boolean;
        format?: string;
        component?: {
            [key: string]: {
                [key: string]: any;
            };
        };
    };
    cloud?: {
        name?: string;
        optional?: number;
        valueDelta?: number;
        uploadPeriod?: number;
        alarmMaxValue?: number;
        alarmMinValue?: number;
    };
}
export interface TapVariableConfigWithDBIOT {
    bundleId: number;
    id: number;
    length: number;
    type: VariableType;
    dbiot?: DBIOTItemConfig;
}
export interface DBIOTBundleConfig {
    id: number;
    name: string;
}
export interface DBIOTConfig {
    targetProtocol: TargetProtocol;
    variables: TapVariableConfigWithDBIOT[];
    bundles: DBIOTBundleConfig[];
}
