import { VariableFormat, HostProtocol, TargetProtocol } from '@iotize/tap';
import { FixedSizeEnumConverter, EnumListConverter, StringConverter, NumberConverter, FloatConverter, BooleanConverter, Ipv4StringConverter, MacAddressStringConverter, StringVersionConverter } from '@iotize/tap/client/impl';

function createEnumConverter(mapping, size) {
    return new FixedSizeEnumConverter(mapping, size);
}
function createEnumArrayConverter(mapping, size) {
    return new EnumListConverter(size, mapping);
}

var ascii = StringConverter.ascii();
var utf8 = new StringConverter('utf8');
var uint8 = NumberConverter.uint8();
var uint16 = NumberConverter.uint16();
var uint32 = NumberConverter.uint32();
var int8 = NumberConverter.int8();
var int16 = NumberConverter.int16();
var int32 = NumberConverter.int32();
var float = FloatConverter.instance32();
var boolean = BooleanConverter.instanceBit0();
var stringIpv4 = Ipv4StringConverter.instance();
var stringIpv4mask = Ipv4StringConverter.instance();
var stringMacaddress = MacAddressStringConverter.instance();
var variableFormat = createEnumConverter(VariableFormat, 1);
var hostProtocol = createEnumConverter(HostProtocol, 2);
var hostProtocolArray = createEnumArrayConverter(HostProtocol, 2);
var targetProtocol = createEnumConverter(TargetProtocol, 1);
var targetProtocolArray = createEnumArrayConverter(TargetProtocol, 1);
// export const tapVersion = new TapVersionConverter();
var stringVersion = new StringVersionConverter();

var converters = /*#__PURE__*/Object.freeze({
    __proto__: null,
    ascii: ascii,
    utf8: utf8,
    uint8: uint8,
    uint16: uint16,
    uint32: uint32,
    int8: int8,
    int16: int16,
    int32: int32,
    float: float,
    boolean: boolean,
    stringIpv4: stringIpv4,
    stringIpv4mask: stringIpv4mask,
    stringMacaddress: stringMacaddress,
    variableFormat: variableFormat,
    hostProtocol: hostProtocol,
    hostProtocolArray: hostProtocolArray,
    targetProtocol: targetProtocol,
    targetProtocolArray: targetProtocolArray,
    stringVersion: stringVersion
});

/**
 * Generated bundle index. Do not edit.
 */

export { converters, createEnumArrayConverter, createEnumConverter };
//# sourceMappingURL=iotize-tap-service-core.js.map
