File Explorer

/var/runtime/node_modules/@aws-sdk/node_modules/aws-crt/dist/common

This explorer reads the filesystem of the server it runs on, so /workspace/user isn't present here. Browsing and the terminal still work against this server's own disk from /.

mqtt5_packet.js26.9 KB · 595 lines
"use strict";/* * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */Object.defineProperty(exports, "__esModule", { value: true });exports.PacketType = exports.RetainHandlingType = exports.QoS = exports.PayloadFormatIndicator = exports.isSuccessfulPubackReasonCode = exports.PubackReasonCode = exports.isSuccessfulUnsubackReasonCode = exports.UnsubackReasonCode = exports.isSuccessfulSubackReasonCode = exports.SubackReasonCode = exports.isSuccessfulDisconnectReasonCode = exports.DisconnectReasonCode = exports.isSuccessfulConnectReasonCode = exports.ConnectReasonCode = void 0;/** * Server return code for connect attempts. * * Enum values match [MQTT5 spec](https://docs.oasis-open.org/mqtt/mqtt/v5.0/os/mqtt-v5.0-os.html#_Toc3901079) encoding values. */var ConnectReasonCode;(function (ConnectReasonCode) {    /**     * Returned when the connection is accepted.     */    ConnectReasonCode[ConnectReasonCode["Success"] = 0] = "Success";    /**     * Returned when the server has a failure but does not want to specify a reason or none     * of the other reason codes apply.     */    ConnectReasonCode[ConnectReasonCode["UnspecifiedError"] = 128] = "UnspecifiedError";    /**     * Returned when data in the CONNECT packet could not be correctly parsed by the server.     */    ConnectReasonCode[ConnectReasonCode["MalformedPacket"] = 129] = "MalformedPacket";    /**     * Returned when data in the CONNECT packet does not conform to the MQTT5 specification requirements.     */    ConnectReasonCode[ConnectReasonCode["ProtocolError"] = 130] = "ProtocolError";    /**     * Returned when the CONNECT packet is valid but was not accepted by the server.     */    ConnectReasonCode[ConnectReasonCode["ImplementationSpecificError"] = 131] = "ImplementationSpecificError";    /**     * Returned when the server does not support MQTT5 protocol version specified in the connection.     */    ConnectReasonCode[ConnectReasonCode["UnsupportedProtocolVersion"] = 132] = "UnsupportedProtocolVersion";    /**     * Returned when the client identifier in the CONNECT packet is a valid string but not one that     * is allowed on the server.     */    ConnectReasonCode[ConnectReasonCode["ClientIdentifierNotValid"] = 133] = "ClientIdentifierNotValid";    /**     * Returned when the server does not accept the username and/or password specified by the client     * in the connection packet.     */    ConnectReasonCode[ConnectReasonCode["BadUsernameOrPassword"] = 134] = "BadUsernameOrPassword";    /**     * Returned when the client is not authorized to connect to the server.     */    ConnectReasonCode[ConnectReasonCode["NotAuthorized"] = 135] = "NotAuthorized";    /**     * Returned when the MQTT5 server is not available.     */    ConnectReasonCode[ConnectReasonCode["ServerUnavailable"] = 136] = "ServerUnavailable";    /**     * Returned when the server is too busy to make a connection. It is recommended that the client try again later.     */    ConnectReasonCode[ConnectReasonCode["ServerBusy"] = 137] = "ServerBusy";    /**     * Returned when the client has been banned by the server.     */    ConnectReasonCode[ConnectReasonCode["Banned"] = 138] = "Banned";    /**     * Returned when the authentication method used in the connection is either not supported on the server or it does     * not match the authentication method currently in use in the CONNECT packet.     */    ConnectReasonCode[ConnectReasonCode["BadAuthenticationMethod"] = 140] = "BadAuthenticationMethod";    /**     * Returned when the Will topic name sent in the connection packet is correctly formed, but is not accepted by     * the server.     */    ConnectReasonCode[ConnectReasonCode["TopicNameInvalid"] = 144] = "TopicNameInvalid";    /**     * Returned when the connection packet exceeded the maximum permissible size on the server.     */    ConnectReasonCode[ConnectReasonCode["PacketTooLarge"] = 149] = "PacketTooLarge";    /**     * Returned when the quota limits set on the server have been met and/or exceeded.     */    ConnectReasonCode[ConnectReasonCode["QuotaExceeded"] = 151] = "QuotaExceeded";    /**     * Returned when the Will payload in the CONNECT packet does not match the specified payload format indicator.     */    ConnectReasonCode[ConnectReasonCode["PayloadFormatInvalid"] = 153] = "PayloadFormatInvalid";    /**     * Returned when the server does not retain messages but the connection packet on the client had Will retain enabled.     */    ConnectReasonCode[ConnectReasonCode["RetainNotSupported"] = 154] = "RetainNotSupported";    /**     * Returned when the server does not support the QOS setting in the Will QOS in the connection packet.     */    ConnectReasonCode[ConnectReasonCode["QosNotSupported"] = 155] = "QosNotSupported";    /**     * Returned when the server is telling the client to temporarily use another server instead of the one they     * are trying to connect to.     */    ConnectReasonCode[ConnectReasonCode["UseAnotherServer"] = 156] = "UseAnotherServer";    /**     * Returned when the server is telling the client to permanently use another server instead of the one they     * are trying to connect to.     */    ConnectReasonCode[ConnectReasonCode["ServerMoved"] = 157] = "ServerMoved";    /**     * Returned when the server connection rate limit has been exceeded.     */    ConnectReasonCode[ConnectReasonCode["ConnectionRateExceeded"] = 159] = "ConnectionRateExceeded";})(ConnectReasonCode = exports.ConnectReasonCode || (exports.ConnectReasonCode = {}));/** * Determines if a reason code represents a successful connect operation * * @param reasonCode reason code to check success for */function isSuccessfulConnectReasonCode(reasonCode) {    return reasonCode < 128;}exports.isSuccessfulConnectReasonCode = isSuccessfulConnectReasonCode;/** * Reason code inside DISCONNECT packets.  Helps determine why a connection was terminated. * * Enum values match [MQTT5 spec](https://docs.oasis-open.org/mqtt/mqtt/v5.0/os/mqtt-v5.0-os.html#_Toc3901208) encoding values. */var DisconnectReasonCode;(function (DisconnectReasonCode) {    /**     * Returned when the remote endpoint wishes to disconnect normally. Will not trigger the publish of a Will message if a     * Will message was configured on the connection.     *     * May be sent by the client or server.     */    DisconnectReasonCode[DisconnectReasonCode["NormalDisconnection"] = 0] = "NormalDisconnection";    /**     * Returns that the client wants to disconnect but requires that the server publish the Will message configured     * on the connection.     *     * May only be sent by the client.     */    DisconnectReasonCode[DisconnectReasonCode["DisconnectWithWillMessage"] = 4] = "DisconnectWithWillMessage";    /**     * Returned when the connection was closed but the sender does not want to specify a reason or none     * of the other reason codes apply.     *     * May be sent by the client or the server.     */    DisconnectReasonCode[DisconnectReasonCode["UnspecifiedError"] = 128] = "UnspecifiedError";    /**     * Indicates the remote endpoint received a packet that does not conform to the MQTT specification.     *     * May be sent by the client or the server.     */    DisconnectReasonCode[DisconnectReasonCode["MalformedPacket"] = 129] = "MalformedPacket";    /**     * Returned when an unexpected or out-of-order packet was received by the remote endpoint.     *     * May be sent by the client or the server.     */    DisconnectReasonCode[DisconnectReasonCode["ProtocolError"] = 130] = "ProtocolError";    /**     * Returned when a valid packet was received by the remote endpoint, but could not be processed by the current implementation.     *     * May be sent by the client or the server.     */    DisconnectReasonCode[DisconnectReasonCode["ImplementationSpecificError"] = 131] = "ImplementationSpecificError";    /**     * Returned when the remote endpoint received a packet that represented an operation that was not authorized within     * the current connection.     *     * May only be sent by the server.     */    DisconnectReasonCode[DisconnectReasonCode["NotAuthorized"] = 135] = "NotAuthorized";    /**     * Returned when the server is busy and cannot continue processing packets from the client.     *     * May only be sent by the server.     */    DisconnectReasonCode[DisconnectReasonCode["ServerBusy"] = 137] = "ServerBusy";    /**     * Returned when the server is shutting down.     *     * May only be sent by the server.     */    DisconnectReasonCode[DisconnectReasonCode["ServerShuttingDown"] = 139] = "ServerShuttingDown";    /**     * Returned when the server closes the connection because no packet from the client has been received in     * 1.5 times the KeepAlive time set when the connection was established.     *     * May only be sent by the server.     */    DisconnectReasonCode[DisconnectReasonCode["KeepAliveTimeout"] = 141] = "KeepAliveTimeout";    /**     * Returned when the server has established another connection with the same client ID as a client's current     * connection, causing the current client to become disconnected.     *     * May only be sent by the server.     */    DisconnectReasonCode[DisconnectReasonCode["SessionTakenOver"] = 142] = "SessionTakenOver";    /**     * Returned when the topic filter name is correctly formed but not accepted by the server.     *     * May only be sent by the server.     */    DisconnectReasonCode[DisconnectReasonCode["TopicFilterInvalid"] = 143] = "TopicFilterInvalid";    /**     * Returned when topic name is correctly formed, but is not accepted.     *     * May be sent by the client or the server.     */    DisconnectReasonCode[DisconnectReasonCode["TopicNameInvalid"] = 144] = "TopicNameInvalid";    /**     * Returned when the remote endpoint reached a state where there were more in-progress QoS1+ publishes then the     * limit it established for itself when the connection was opened.     *     * May be sent by the client or the server.     */    DisconnectReasonCode[DisconnectReasonCode["ReceiveMaximumExceeded"] = 147] = "ReceiveMaximumExceeded";    /**     * Returned when the remote endpoint receives a PUBLISH packet that contained a topic alias greater than the     * maximum topic alias limit that it established for itself when the connection was opened.     *     * May be sent by the client or the server.     */    DisconnectReasonCode[DisconnectReasonCode["TopicAliasInvalid"] = 148] = "TopicAliasInvalid";    /**     * Returned when the remote endpoint received a packet whose size was greater than the maximum packet size limit     * it established for itself when the connection was opened.     *     * May be sent by the client or the server.     */    DisconnectReasonCode[DisconnectReasonCode["PacketTooLarge"] = 149] = "PacketTooLarge";    /**     * Returned when the remote endpoint's incoming data rate was too high.     *     * May be sent by the client or the server.     */    DisconnectReasonCode[DisconnectReasonCode["MessageRateTooHigh"] = 150] = "MessageRateTooHigh";    /**     * Returned when an internal quota of the remote endpoint was exceeded.     *     * May be sent by the client or the server.     */    DisconnectReasonCode[DisconnectReasonCode["QuotaExceeded"] = 151] = "QuotaExceeded";    /**     * Returned when the connection was closed due to an administrative action.     *     * May be sent by the client or the server.     */    DisconnectReasonCode[DisconnectReasonCode["AdministrativeAction"] = 152] = "AdministrativeAction";    /**     * Returned when the remote endpoint received a packet where payload format did not match the format specified     * by the payload format indicator.     *     * May be sent by the client or the server.     */    DisconnectReasonCode[DisconnectReasonCode["PayloadFormatInvalid"] = 153] = "PayloadFormatInvalid";    /**     * Returned when the server does not support retained messages.     *     * May only be sent by the server.     */    DisconnectReasonCode[DisconnectReasonCode["RetainNotSupported"] = 154] = "RetainNotSupported";    /**     * Returned when the client sends a QOS that is greater than the maximum QOS established when the connection was     * opened.     *     * May only be sent by the server.     */    DisconnectReasonCode[DisconnectReasonCode["QosNotSupported"] = 155] = "QosNotSupported";    /**     * Returned by the server to tell the client to temporarily use a different server.     *     * May only be sent by the server.     */    DisconnectReasonCode[DisconnectReasonCode["UseAnotherServer"] = 156] = "UseAnotherServer";    /**     * Returned by the server to tell the client to permanently use a different server.     *     * May only be sent by the server.     */    DisconnectReasonCode[DisconnectReasonCode["ServerMoved"] = 157] = "ServerMoved";    /**     * Returned by the server to tell the client that shared subscriptions are not supported on the server.     *     * May only be sent by the server.     */    DisconnectReasonCode[DisconnectReasonCode["SharedSubscriptionsNotSupported"] = 158] = "SharedSubscriptionsNotSupported";    /**     * Returned when the server disconnects the client due to the connection rate being too high.     *     * May only be sent by the server.     */    DisconnectReasonCode[DisconnectReasonCode["ConnectionRateExceeded"] = 159] = "ConnectionRateExceeded";    /**     * Returned by the server when the maximum connection time authorized for the connection was exceeded.     *     * May only be sent by the server.     */    DisconnectReasonCode[DisconnectReasonCode["MaximumConnectTime"] = 160] = "MaximumConnectTime";    /**     * Returned by the server when it received a SUBSCRIBE packet with a subscription identifier, but the server does     * not support subscription identifiers.     *     * May only be sent by the server.     */    DisconnectReasonCode[DisconnectReasonCode["SubscriptionIdentifiersNotSupported"] = 161] = "SubscriptionIdentifiersNotSupported";    /**     * Returned by the server when it received a SUBSCRIBE packet with a wildcard topic filter, but the server does     * not support wildcard topic filters.     *     * May only be sent by the server.     */    DisconnectReasonCode[DisconnectReasonCode["WildcardSubscriptionsNotSupported"] = 162] = "WildcardSubscriptionsNotSupported";})(DisconnectReasonCode = exports.DisconnectReasonCode || (exports.DisconnectReasonCode = {}));/** * Determines if a reason code represents a successful disconnect operation * * @param reasonCode reason code to check success for */function isSuccessfulDisconnectReasonCode(reasonCode) {    return reasonCode < 128;}exports.isSuccessfulDisconnectReasonCode = isSuccessfulDisconnectReasonCode;/** * Reason codes inside SUBACK packet payloads that specify the results for each subscription in the associated * SUBSCRIBE packet. * * Enum values match [MQTT5 spec](https://docs.oasis-open.org/mqtt/mqtt/v5.0/os/mqtt-v5.0-os.html#_Toc3901178) encoding values. */var SubackReasonCode;(function (SubackReasonCode) {    /**     * Returned when the subscription was accepted and the maximum QOS sent will be QOS 0.     */    SubackReasonCode[SubackReasonCode["GrantedQoS0"] = 0] = "GrantedQoS0";    /**     * Returned when the subscription was accepted and the maximum QOS sent will be QOS 1.     */    SubackReasonCode[SubackReasonCode["GrantedQoS1"] = 1] = "GrantedQoS1";    /**     * Returned when the subscription was accepted and the maximum QOS sent will be QOS 2.     */    SubackReasonCode[SubackReasonCode["GrantedQoS2"] = 2] = "GrantedQoS2";    /**     * Returned when the connection was closed but the sender does not want to specify a reason or none     * of the other reason codes apply.     */    SubackReasonCode[SubackReasonCode["UnspecifiedError"] = 128] = "UnspecifiedError";    /**     * Returned when the subscription was valid but the server did not accept it.     */    SubackReasonCode[SubackReasonCode["ImplementationSpecificError"] = 131] = "ImplementationSpecificError";    /**     * Returned when the client was not authorized to make the subscription on the server.     */    SubackReasonCode[SubackReasonCode["NotAuthorized"] = 135] = "NotAuthorized";    /**     * Returned when the subscription topic filter was correctly formed but not allowed for the client.     */    SubackReasonCode[SubackReasonCode["TopicFilterInvalid"] = 143] = "TopicFilterInvalid";    /**     * Returned when the packet identifier was already in use on the server.     */    SubackReasonCode[SubackReasonCode["PacketIdentifierInUse"] = 145] = "PacketIdentifierInUse";    /**     * Returned when a subscribe-related quota set on the server was exceeded.     */    SubackReasonCode[SubackReasonCode["QuotaExceeded"] = 151] = "QuotaExceeded";    /**     * Returned when the subscription's topic filter was a shared subscription and the server does not support     * shared subscriptions.     */    SubackReasonCode[SubackReasonCode["SharedSubscriptionsNotSupported"] = 158] = "SharedSubscriptionsNotSupported";    /**     * Returned when the SUBSCRIBE packet contained a subscription identifier and the server does not support     * subscription identifiers.     */    SubackReasonCode[SubackReasonCode["SubscriptionIdentifiersNotSupported"] = 161] = "SubscriptionIdentifiersNotSupported";    /**     * Returned when the subscription's topic filter contains a wildcard but the server does not support     * wildcard subscriptions.     */    SubackReasonCode[SubackReasonCode["WildcardSubscriptionsNotSupported"] = 162] = "WildcardSubscriptionsNotSupported";})(SubackReasonCode = exports.SubackReasonCode || (exports.SubackReasonCode = {}));/** * Determines if a reason code represents a successful subscribe operation * * @param reasonCode reason code to check success for */function isSuccessfulSubackReasonCode(reasonCode) {    return reasonCode < 128;}exports.isSuccessfulSubackReasonCode = isSuccessfulSubackReasonCode;/** * Reason codes inside UNSUBACK packet payloads that specify the results for each topic filter in the associated * UNSUBSCRIBE packet. * * Enum values match [MQTT5 spec](https://docs.oasis-open.org/mqtt/mqtt/v5.0/os/mqtt-v5.0-os.html#_Toc3901194) encoding values. */var UnsubackReasonCode;(function (UnsubackReasonCode) {    /**     * Returned when the unsubscribe was successful and the client is no longer subscribed to the topic filter on the server.     */    UnsubackReasonCode[UnsubackReasonCode["Success"] = 0] = "Success";    /**     * Returned when the topic filter did not match one of the client's existing subscriptions on the server.     */    UnsubackReasonCode[UnsubackReasonCode["NoSubscriptionExisted"] = 17] = "NoSubscriptionExisted";    /**     * Returned when the unsubscribe of the topic filter was not accepted and the server does not want to specify a     * reason or none of the other reason codes apply.     */    UnsubackReasonCode[UnsubackReasonCode["UnspecifiedError"] = 128] = "UnspecifiedError";    /**     * Returned when the topic filter was valid but the server does not accept an unsubscribe for it.     */    UnsubackReasonCode[UnsubackReasonCode["ImplementationSpecificError"] = 131] = "ImplementationSpecificError";    /**     * Returned when the client was not authorized to unsubscribe from that topic filter on the server.     */    UnsubackReasonCode[UnsubackReasonCode["NotAuthorized"] = 135] = "NotAuthorized";    /**     * Returned when the topic filter was correctly formed but is not allowed for the client on the server.     */    UnsubackReasonCode[UnsubackReasonCode["TopicFilterInvalid"] = 143] = "TopicFilterInvalid";    /**     * Returned when the packet identifier was already in use on the server.     */    UnsubackReasonCode[UnsubackReasonCode["PacketIdentifierInUse"] = 145] = "PacketIdentifierInUse";})(UnsubackReasonCode = exports.UnsubackReasonCode || (exports.UnsubackReasonCode = {}));/** * Determines if a reason code represents a successful unsubscribe operation * * @param reasonCode reason code to check success for */function isSuccessfulUnsubackReasonCode(reasonCode) {    return reasonCode < 128;}exports.isSuccessfulUnsubackReasonCode = isSuccessfulUnsubackReasonCode;/** * Reason code inside PUBACK packets that indicates the result of the associated PUBLISH request. * * Enum values match [MQTT5 spec](https://docs.oasis-open.org/mqtt/mqtt/v5.0/os/mqtt-v5.0-os.html#_Toc3901124) encoding values. */var PubackReasonCode;(function (PubackReasonCode) {    /**     * Returned when the (QoS 1) publish was accepted by the recipient.     *     * May be sent by the client or the server.     */    PubackReasonCode[PubackReasonCode["Success"] = 0] = "Success";    /**     * Returned when the (QoS 1) publish was accepted but there were no matching subscribers.     *     * May only be sent by the server.     */    PubackReasonCode[PubackReasonCode["NoMatchingSubscribers"] = 16] = "NoMatchingSubscribers";    /**     * Returned when the (QoS 1) publish was not accepted and the receiver does not want to specify a reason or none     * of the other reason codes apply.     *     * May be sent by the client or the server.     */    PubackReasonCode[PubackReasonCode["UnspecifiedError"] = 128] = "UnspecifiedError";    /**     * Returned when the (QoS 1) publish was valid but the receiver was not willing to accept it.     *     * May be sent by the client or the server.     */    PubackReasonCode[PubackReasonCode["ImplementationSpecificError"] = 131] = "ImplementationSpecificError";    /**     * Returned when the (QoS 1) publish was not authorized by the receiver.     *     * May be sent by the client or the server.     */    PubackReasonCode[PubackReasonCode["NotAuthorized"] = 135] = "NotAuthorized";    /**     * Returned when the topic name was valid but the receiver was not willing to accept it.     *     * May be sent by the client or the server.     */    PubackReasonCode[PubackReasonCode["TopicNameInvalid"] = 144] = "TopicNameInvalid";    /**     * Returned when the packet identifier used in the associated PUBLISH was already in use.     * This can indicate a mismatch in the session state between client and server.     *     * May be sent by the client or the server.     */    PubackReasonCode[PubackReasonCode["PacketIdentifierInUse"] = 145] = "PacketIdentifierInUse";    /**     * Returned when the associated PUBLISH failed because an internal quota on the recipient was exceeded.     *     * May be sent by the client or the server.     */    PubackReasonCode[PubackReasonCode["QuotaExceeded"] = 151] = "QuotaExceeded";    /**     * Returned when the PUBLISH packet's payload format did not match its payload format indicator property.     *     * May be sent by the client or the server.     */    PubackReasonCode[PubackReasonCode["PayloadFormatInvalid"] = 153] = "PayloadFormatInvalid";})(PubackReasonCode = exports.PubackReasonCode || (exports.PubackReasonCode = {}));/** * Determines if a reason code represents a successful QoS 1 publish operation * * @param reasonCode reason code to check success for */function isSuccessfulPubackReasonCode(reasonCode) {    return reasonCode < 128;}exports.isSuccessfulPubackReasonCode = isSuccessfulPubackReasonCode;/** * Optional property describing a PUBLISH payload's format. * * Enum values match [MQTT5 spec](https://docs.oasis-open.org/mqtt/mqtt/v5.0/os/mqtt-v5.0-os.html#_Toc3901111) encoding values. */var PayloadFormatIndicator;(function (PayloadFormatIndicator) {    /**     * The payload is arbitrary binary data     */    PayloadFormatIndicator[PayloadFormatIndicator["Bytes"] = 0] = "Bytes";    /**     * The payload is a well-formed utf-8 string value.     */    PayloadFormatIndicator[PayloadFormatIndicator["Utf8"] = 1] = "Utf8";})(PayloadFormatIndicator = exports.PayloadFormatIndicator || (exports.PayloadFormatIndicator = {}));/** * MQTT message delivery quality of service. * * Enum values match [MQTT5 spec](https://docs.oasis-open.org/mqtt/mqtt/v5.0/os/mqtt-v5.0-os.html#_Toc3901234) encoding values. */var QoS;(function (QoS) {    /**     * The message is delivered according to the capabilities of the underlying network. No response is sent by the     * receiver and no retry is performed by the sender. The message arrives at the receiver either once or not at all.     */    QoS[QoS["AtMostOnce"] = 0] = "AtMostOnce";    /**     * A level of service that ensures that the message arrives at the receiver at least once.     */    QoS[QoS["AtLeastOnce"] = 1] = "AtLeastOnce";    /**     * A level of service that ensures that the message arrives at the receiver exactly once.     */    QoS[QoS["ExactlyOnce"] = 2] = "ExactlyOnce";})(QoS = exports.QoS || (exports.QoS = {}));/** * Configures how retained messages should be handled when subscribing with a topic filter that matches topics with * associated retained messages. * * Enum values match [MQTT5 spec](https://docs.oasis-open.org/mqtt/mqtt/v5.0/os/mqtt-v5.0-os.html#_Toc3901169) encoding values. */var RetainHandlingType;(function (RetainHandlingType) {    /**     * The server should always send all retained messages on topics that match a subscription's filter.     */    RetainHandlingType[RetainHandlingType["SendOnSubscribe"] = 0] = "SendOnSubscribe";    /**     * The server should send retained messages on topics that match the subscription's filter, but only for the     * first matching subscription, per session.     */    RetainHandlingType[RetainHandlingType["SendOnSubscribeIfNew"] = 1] = "SendOnSubscribeIfNew";    /**     * Subscriptions must not trigger any retained message publishes from the server.     */    RetainHandlingType[RetainHandlingType["DontSend"] = 2] = "DontSend";})(RetainHandlingType = exports.RetainHandlingType || (exports.RetainHandlingType = {}));/** * Packet type indicator that allows for basic polymorphism with user-received packets.  Enum values * match the mqtt spec's [packet type encoding](https://docs.oasis-open.org/mqtt/mqtt/v5.0/os/mqtt-v5.0-os.html#_Toc3901022) values. */var PacketType;(function (PacketType) {    PacketType[PacketType["Connect"] = 1] = "Connect";    PacketType[PacketType["Connack"] = 2] = "Connack";    PacketType[PacketType["Publish"] = 3] = "Publish";    PacketType[PacketType["Puback"] = 4] = "Puback";    PacketType[PacketType["Pubrec"] = 5] = "Pubrec";    PacketType[PacketType["Pubrel"] = 6] = "Pubrel";    PacketType[PacketType["Pubcomp"] = 7] = "Pubcomp";    PacketType[PacketType["Subscribe"] = 8] = "Subscribe";    PacketType[PacketType["Suback"] = 9] = "Suback";    PacketType[PacketType["Unsubscribe"] = 10] = "Unsubscribe";    PacketType[PacketType["Unsuback"] = 11] = "Unsuback";    PacketType[PacketType["Pingreq"] = 12] = "Pingreq";    PacketType[PacketType["Pingresp"] = 13] = "Pingresp";    PacketType[PacketType["Disconnect"] = 14] = "Disconnect";    PacketType[PacketType["Auth"] = 15] = "Auth";})(PacketType = exports.PacketType || (exports.PacketType = {}));//# sourceMappingURL=mqtt5_packet.js.map