@cygnus-reach/reach-protocol
Version:
Improve the Reachâ„ remote support experience with straightforward device interactions via the Reach Protocol.
1,365 lines (1,360 loc) • 346 kB
JavaScript
'use strict';
var rxjs = require('rxjs');
var runtime = require('@protobuf-ts/runtime');
// tslint:disable: promise-function-async
/**
* A CompletablePromise is a Promise whose fulfillment or rejection
* can be triggered externally.
*
* @param T - the type of the object the promise can be fulfilled with.
*/
class CompletablePromise {
/**
* Create a new CompletablePromise that is already in the fulfilled state.
*
* @param value - the value to fulfill the promise with.
*/
static resolved(value) {
const cp = new CompletablePromise();
cp.fulfill(value);
return cp;
}
/**
* Construct a new CompletablePromise.
*/
constructor() {
/** The current state of the backing promise object. */
this.stateField = 'pending';
/**
* Fulfill the completable promise with some value.
*
* @param value - The value to fulfill the promise with.
*/
this.fulfill = (value) => {
// no-op
};
/**
* Reject the completable promise with an error.
*
* @param reason - The reason to reject the completable promise.
*/
this.reject = (reason) => {
// no-op
};
this.promise = new Promise((onFulfilled, onRejected) => {
this.fulfill = (value) => {
this.stateField = 'resolved';
onFulfilled(value);
};
this.reject = (reason) => {
this.stateField = 'rejected';
onRejected(reason);
};
});
}
/**
* Get the current state of the CompletablePromise.
*
* @returns 'pending' | 'resolved' | 'rejected'.
*/
get state() {
return this.stateField;
}
/**
* Attaches a single callback for both the resolution and rejection
* of the promise.
*/
finally(onfinally) {
if (this.promise.finally) {
return this.promise.finally(onfinally);
}
return Promise.reject('Finally is not supported on this platform');
}
/**
* Attaches callbacks for the resolution and/or rejection of the Promise.
*/
then(onfulfilled, onrejected) {
return this.promise.then(onfulfilled, onrejected);
}
/**
* Attaches callbacks for just the rejection of the Promise.
*/
catch(onrejected) {
return this.promise.catch(onrejected);
}
wait() {
return this;
}
}
const DEFAULT_PARAM_VALUES_PER_MESSAGE = 1;
const DEFAULT_MAX_BYTES_PER_MESSAGE = 244;
const DEFAULT_MAX_FILE_TRANSFER_BUFFER = 194;
const DEFAULT_TRANSFER_BYTES = 100;
const DEFAULT_MESSAGES_PER_ACK = 1;
const DEFAULT_TIMEOUT_MS = 5000;
// ReachProtoVersion is replaced by the MAJOR, MINOR and PATCH, below.
// 5: device info extended with sizes structure
// 6: device info entries made redundant by sizes are deleted.
// 7: Added file erase and time service
// 10: Skipped up to make incompatible change to BufferSizes
// 11: Changes to improve the compatibility of v10
// 12: Renamed "reply" messages as "response" messages.
// 13: Restored param_info_enum_count
// 14: Adding WiFi service
// 15: 32 character challenge key
// 16: Replaced number_of_objects; with client_id
// 17: Add description and timeout to CommandInfo
// 18: Generalize device description len to description len
// 19: Remove parameter key
// 20: Added protocol_version_string, deprecated protocol_version.
// 21: Added separate version numbers for MAJOR, MINOR and PATCH.
// 0x101: starting on ahsoka changes
// 0x102: merging 676 into ahsoka
// 0x103: Reworked FileTransfer start with checksum and preferred ack rate.
// 0x104: Added discover notifications.
// 0x105: Renamed discover notifications.
// 0x106: Changed CONFIG_PARAM_NOTIFY handling to expect an array of up to 8.
// 0x107: Replaced CONFIG_PARAM_NOTIFY with ENABLE and DISABLE
// 0x108: Removed and reserved obsolete messages_per_ack
// 0.2.1: Unionzed Parameter Descriptions
// 0.2.2: File erase, removed integer proto version
// 0.2.3: Stream support
/**
* / The major version generally changes to signal a break in compatibility
*
* @generated from protobuf enum cr.ReachProto_MAJOR_Version
*/
exports.ReachProto_MAJOR_Version = void 0;
(function (ReachProto_MAJOR_Version) {
/**
* MAJOR_V0 = 0; // Must have a zero
*
* @generated from protobuf enum value: MAJOR_VERSION = 0;
*/
ReachProto_MAJOR_Version[ReachProto_MAJOR_Version["MAJOR_VERSION"] = 0] = "MAJOR_VERSION";
})(exports.ReachProto_MAJOR_Version || (exports.ReachProto_MAJOR_Version = {}));
/**
* / The minor version changes at a release which is not completely compatible
*
* @generated from protobuf enum cr.ReachProto_MINOR_Version
*/
exports.ReachProto_MINOR_Version = void 0;
(function (ReachProto_MINOR_Version) {
/**
* /< Must have a zero
*
* @generated from protobuf enum value: MINOR_V0 = 0;
*/
ReachProto_MINOR_Version[ReachProto_MINOR_Version["MINOR_V0"] = 0] = "MINOR_V0";
/**
* /< Update at a release or a big change
*
* @generated from protobuf enum value: MINOR_VERSION = 2;
*/
ReachProto_MINOR_Version[ReachProto_MINOR_Version["MINOR_VERSION"] = 2] = "MINOR_VERSION";
})(exports.ReachProto_MINOR_Version || (exports.ReachProto_MINOR_Version = {}));
/**
* / The patch version changes every time a hex file goes out the door.
*
* @generated from protobuf enum cr.ReachProto_PATCH_Version
*/
exports.ReachProto_PATCH_Version = void 0;
(function (ReachProto_PATCH_Version) {
/**
* /< Must have a zero
*
* @generated from protobuf enum value: PATCH_V0 = 0;
*/
ReachProto_PATCH_Version[ReachProto_PATCH_Version["PATCH_V0"] = 0] = "PATCH_V0";
/**
* /< Update when something changes
*
* @generated from protobuf enum value: PATCH_VERSION = 3;
*/
ReachProto_PATCH_Version[ReachProto_PATCH_Version["PATCH_VERSION"] = 3] = "PATCH_VERSION";
})(exports.ReachProto_PATCH_Version || (exports.ReachProto_PATCH_Version = {}));
/**
* / These values identify the type of the Reach message.
*
* @generated from protobuf enum cr.ReachMessageTypes
*/
exports.ReachMessageTypes = void 0;
(function (ReachMessageTypes) {
/**
* /< No Valid Message
*
* @generated from protobuf enum value: INVALID = 0;
*/
ReachMessageTypes[ReachMessageTypes["INVALID"] = 0] = "INVALID";
/**
* /< Inform client of an error condition
*
* @generated from protobuf enum value: ERROR_REPORT = 1;
*/
ReachMessageTypes[ReachMessageTypes["ERROR_REPORT"] = 1] = "ERROR_REPORT";
/**
* /< Test the link to the server
*
* @generated from protobuf enum value: PING = 2;
*/
ReachMessageTypes[ReachMessageTypes["PING"] = 2] = "PING";
/**
* /< Open the communication with a server
*
* @generated from protobuf enum value: GET_DEVICE_INFO = 3;
*/
ReachMessageTypes[ReachMessageTypes["GET_DEVICE_INFO"] = 3] = "GET_DEVICE_INFO";
/**
* / Parameters
*
* /< Get a list of all of the parameters in the repository
*
* @generated from protobuf enum value: DISCOVER_PARAMETERS = 5;
*/
ReachMessageTypes[ReachMessageTypes["DISCOVER_PARAMETERS"] = 5] = "DISCOVER_PARAMETERS";
/**
* /< An extension to discover used by verbose parameters
*
* @generated from protobuf enum value: DISCOVER_PARAM_EX = 6;
*/
ReachMessageTypes[ReachMessageTypes["DISCOVER_PARAM_EX"] = 6] = "DISCOVER_PARAM_EX";
/**
* /< Get the values of a set of parameters
*
* @generated from protobuf enum value: READ_PARAMETERS = 7;
*/
ReachMessageTypes[ReachMessageTypes["READ_PARAMETERS"] = 7] = "READ_PARAMETERS";
/**
* /< Change the values of a set of parameters
*
* @generated from protobuf enum value: WRITE_PARAMETERS = 8;
*/
ReachMessageTypes[ReachMessageTypes["WRITE_PARAMETERS"] = 8] = "WRITE_PARAMETERS";
/**
* /< Sent from the server to the client when a parameter has changed
*
* @generated from protobuf enum value: PARAMETER_NOTIFICATION = 10;
*/
ReachMessageTypes[ReachMessageTypes["PARAMETER_NOTIFICATION"] = 10] = "PARAMETER_NOTIFICATION";
/**
* /< Find out how notifications are setup
*
* @generated from protobuf enum value: DISCOVER_NOTIFICATIONS = 11;
*/
ReachMessageTypes[ReachMessageTypes["DISCOVER_NOTIFICATIONS"] = 11] = "DISCOVER_NOTIFICATIONS";
/**
* /< setup parameter notifications
*
* @generated from protobuf enum value: PARAM_ENABLE_NOTIFY = 50;
*/
ReachMessageTypes[ReachMessageTypes["PARAM_ENABLE_NOTIFY"] = 50] = "PARAM_ENABLE_NOTIFY";
/**
* /< disable parameter notifications
*
* @generated from protobuf enum value: PARAM_DISABLE_NOTIFY = 51;
*/
ReachMessageTypes[ReachMessageTypes["PARAM_DISABLE_NOTIFY"] = 51] = "PARAM_DISABLE_NOTIFY";
/**
* / File Transfers
*
* /< Get a list of supported files
*
* @generated from protobuf enum value: DISCOVER_FILES = 12;
*/
ReachMessageTypes[ReachMessageTypes["DISCOVER_FILES"] = 12] = "DISCOVER_FILES";
/**
* /< Begin a file transfer
*
* @generated from protobuf enum value: TRANSFER_INIT = 13;
*/
ReachMessageTypes[ReachMessageTypes["TRANSFER_INIT"] = 13] = "TRANSFER_INIT";
/**
* /< (bi-directional) sends the requested data
*
* @generated from protobuf enum value: TRANSFER_DATA = 14;
*/
ReachMessageTypes[ReachMessageTypes["TRANSFER_DATA"] = 14] = "TRANSFER_DATA";
/**
* /< (bi-directional) Clears Sender to Send More Data
*
* @generated from protobuf enum value: TRANSFER_DATA_NOTIFICATION = 15;
*/
ReachMessageTypes[ReachMessageTypes["TRANSFER_DATA_NOTIFICATION"] = 15] = "TRANSFER_DATA_NOTIFICATION";
/**
* /< Set file size to zero.
*
* @generated from protobuf enum value: ERASE_FILE = 16;
*/
ReachMessageTypes[ReachMessageTypes["ERASE_FILE"] = 16] = "ERASE_FILE";
/**
* / Commands
*
* /< Get a list of supported commands
*
* @generated from protobuf enum value: DISCOVER_COMMANDS = 17;
*/
ReachMessageTypes[ReachMessageTypes["DISCOVER_COMMANDS"] = 17] = "DISCOVER_COMMANDS";
/**
* /< Reqeuest excecution of a command
*
* @generated from protobuf enum value: SEND_COMMAND = 18;
*/
ReachMessageTypes[ReachMessageTypes["SEND_COMMAND"] = 18] = "SEND_COMMAND";
/**
* Command Line Interface
*
* /< Inform the other side (bi-directional) of a command line.
*
* @generated from protobuf enum value: CLI_NOTIFICATION = 20;
*/
ReachMessageTypes[ReachMessageTypes["CLI_NOTIFICATION"] = 20] = "CLI_NOTIFICATION";
/**
* Streams
*
* /< Get a list of supported streams
*
* @generated from protobuf enum value: DISCOVER_STREAMS = 25;
*/
ReachMessageTypes[ReachMessageTypes["DISCOVER_STREAMS"] = 25] = "DISCOVER_STREAMS";
/**
* /< Open a stream
*
* @generated from protobuf enum value: OPEN_STREAM = 26;
*/
ReachMessageTypes[ReachMessageTypes["OPEN_STREAM"] = 26] = "OPEN_STREAM";
/**
* /< Close a stream
*
* @generated from protobuf enum value: CLOSE_STREAM = 27;
*/
ReachMessageTypes[ReachMessageTypes["CLOSE_STREAM"] = 27] = "CLOSE_STREAM";
/**
* /< Inform the other side (bi-directional) of data on a stream.
*
* @generated from protobuf enum value: STREAM_DATA_NOTIFICATION = 28;
*/
ReachMessageTypes[ReachMessageTypes["STREAM_DATA_NOTIFICATION"] = 28] = "STREAM_DATA_NOTIFICATION";
/**
* Time
*
* /< Set the real time clock
*
* @generated from protobuf enum value: SET_TIME = 30;
*/
ReachMessageTypes[ReachMessageTypes["SET_TIME"] = 30] = "SET_TIME";
/**
* /< Read the real time clock
*
* @generated from protobuf enum value: GET_TIME = 31;
*/
ReachMessageTypes[ReachMessageTypes["GET_TIME"] = 31] = "GET_TIME";
/**
* WiFi
*
* /< Get a list of WiFi acces points
*
* @generated from protobuf enum value: DISCOVER_WIFI = 40;
*/
ReachMessageTypes[ReachMessageTypes["DISCOVER_WIFI"] = 40] = "DISCOVER_WIFI";
/**
* /< Connect or disconnect to an access point
*
* @generated from protobuf enum value: WIFI_CONNECT = 41;
*/
ReachMessageTypes[ReachMessageTypes["WIFI_CONNECT"] = 41] = "WIFI_CONNECT";
})(exports.ReachMessageTypes || (exports.ReachMessageTypes = {}));
/**
* / binary bit masks or'ed together into the DeviceInfoResponse.services
*
* @generated from protobuf enum cr.ServiceIds
*/
exports.ServiceIds = void 0;
(function (ServiceIds) {
/**
* /< No services. Device info service is required.
*
* @generated from protobuf enum value: NO_SVC_ID = 0;
*/
ServiceIds[ServiceIds["NO_SVC_ID"] = 0] = "NO_SVC_ID";
/**
* /< Set this bit when the device supports the parameter service
*
* @generated from protobuf enum value: PARAMETER_REPO = 1;
*/
ServiceIds[ServiceIds["PARAMETER_REPO"] = 1] = "PARAMETER_REPO";
/**
* /< Set this bit when the device supports the file service
*
* @generated from protobuf enum value: FILES = 2;
*/
ServiceIds[ServiceIds["FILES"] = 2] = "FILES";
/**
* /< Set this bit when the device supports the stream service
*
* @generated from protobuf enum value: STREAMS = 4;
*/
ServiceIds[ServiceIds["STREAMS"] = 4] = "STREAMS";
/**
* /< Set this bit when the device supports the command service
*
* @generated from protobuf enum value: COMMANDS = 8;
*/
ServiceIds[ServiceIds["COMMANDS"] = 8] = "COMMANDS";
/**
* /< Set this bit when the device supports the command line interface
*
* @generated from protobuf enum value: CLI = 16;
*/
ServiceIds[ServiceIds["CLI"] = 16] = "CLI";
/**
* /< Set this bit when the device supports the time service
*
* @generated from protobuf enum value: TIME = 32;
*/
ServiceIds[ServiceIds["TIME"] = 32] = "TIME";
/**
* /< Set this bit when the device supports the WiFi service
*
* @generated from protobuf enum value: WIFI = 64;
*/
ServiceIds[ServiceIds["WIFI"] = 64] = "WIFI";
})(exports.ServiceIds || (exports.ServiceIds = {}));
/**
* / binary bit masks or'ed together into the DeviceInfoResponse.endpoints
*
* @generated from protobuf enum cr.EndpointIds
*/
exports.EndpointIds = void 0;
(function (EndpointIds) {
/**
* /< No other endpoints
*
* @generated from protobuf enum value: NO_ENDPOINTS = 0;
*/
EndpointIds[EndpointIds["NO_ENDPOINTS"] = 0] = "NO_ENDPOINTS";
/**
* /< This is the first of multiple endpoints.
*
* @generated from protobuf enum value: ONE = 1;
*/
EndpointIds[EndpointIds["ONE"] = 1] = "ONE";
/**
* /< This is the second of multiple endpoints.
*
* @generated from protobuf enum value: TWO = 2;
*/
EndpointIds[EndpointIds["TWO"] = 2] = "TWO";
/**
* /< This is the third of multiple endpoints.
*
* @generated from protobuf enum value: THREE = 4;
*/
EndpointIds[EndpointIds["THREE"] = 4] = "THREE";
/**
* /< This is the fourth of multiple endpoints.
*
* @generated from protobuf enum value: FOUR = 8;
*/
EndpointIds[EndpointIds["FOUR"] = 8] = "FOUR";
})(exports.EndpointIds || (exports.EndpointIds = {}));
/**
* / These are the types of data that can be stored as parameters.
*
* @generated from protobuf enum cr.ParameterDataType
*/
exports.ParameterDataType = void 0;
(function (ParameterDataType) {
/**
* /< Unsigned 32 bit integer.
*
* @generated from protobuf enum value: UINT32 = 0;
*/
ParameterDataType[ParameterDataType["UINT32"] = 0] = "UINT32";
/**
* /< Signed 32 bit integer.
*
* @generated from protobuf enum value: INT32 = 1;
*/
ParameterDataType[ParameterDataType["INT32"] = 1] = "INT32";
/**
* /< 32 bit floating point.
*
* @generated from protobuf enum value: FLOAT32 = 2;
*/
ParameterDataType[ParameterDataType["FLOAT32"] = 2] = "FLOAT32";
/**
* /< Unsigned 64 bit integer.
*
* @generated from protobuf enum value: UINT64 = 3;
*/
ParameterDataType[ParameterDataType["UINT64"] = 3] = "UINT64";
/**
* /< Signed 64 bit integer.
*
* @generated from protobuf enum value: INT64 = 4;
*/
ParameterDataType[ParameterDataType["INT64"] = 4] = "INT64";
/**
* /< 64 bit floating point.
*
* @generated from protobuf enum value: FLOAT64 = 5;
*/
ParameterDataType[ParameterDataType["FLOAT64"] = 5] = "FLOAT64";
/**
* /< boolean (0 or 1)
*
* @generated from protobuf enum value: BOOL = 6;
*/
ParameterDataType[ParameterDataType["BOOL"] = 6] = "BOOL";
/**
* /< ASCII or UTF-8. Null Terminated.
*
* @generated from protobuf enum value: STRING = 7;
*/
ParameterDataType[ParameterDataType["STRING"] = 7] = "STRING";
/**
* /< An extended description gives names to 32 bit integer values.
*
* @generated from protobuf enum value: ENUMERATION = 8;
*/
ParameterDataType[ParameterDataType["ENUMERATION"] = 8] = "ENUMERATION";
/**
* /< An extended description gives names to up to 64 bit positions.
*
* @generated from protobuf enum value: BIT_FIELD = 9;
*/
ParameterDataType[ParameterDataType["BIT_FIELD"] = 9] = "BIT_FIELD";
/**
* /< An array of bytes.
*
* @generated from protobuf enum value: BYTE_ARRAY = 10;
*/
ParameterDataType[ParameterDataType["BYTE_ARRAY"] = 10] = "BYTE_ARRAY";
})(exports.ParameterDataType || (exports.ParameterDataType = {}));
/**
* / permissions
*
* @generated from protobuf enum cr.AccessLevel
*/
exports.AccessLevel = void 0;
(function (AccessLevel) {
/**
* /< No permission
*
* @generated from protobuf enum value: NO_ACCESS = 0;
*/
AccessLevel[AccessLevel["NO_ACCESS"] = 0] = "NO_ACCESS";
/**
* /< Read permission
*
* @generated from protobuf enum value: READ = 1;
*/
AccessLevel[AccessLevel["READ"] = 1] = "READ";
/**
* /< Write permission
*
* @generated from protobuf enum value: WRITE = 2;
*/
AccessLevel[AccessLevel["WRITE"] = 2] = "WRITE";
/**
* /< Read and write permission
*
* @generated from protobuf enum value: READ_WRITE = 3;
*/
AccessLevel[AccessLevel["READ_WRITE"] = 3] = "READ_WRITE";
})(exports.AccessLevel || (exports.AccessLevel = {}));
/**
* / The types of memory in which parameters are stored. RAM and NVM (Non Volatile Memory) are most common.
*
* @generated from protobuf enum cr.StorageLocation
*/
exports.StorageLocation = void 0;
(function (StorageLocation) {
/**
* /< unknown, not used
*
* @generated from protobuf enum value: STORAGE_LOCATION_INVALID = 0;
*/
StorageLocation[StorageLocation["STORAGE_LOCATION_INVALID"] = 0] = "STORAGE_LOCATION_INVALID";
/**
* /< RAM, volatile, not saved on reboot.
*
* @generated from protobuf enum value: RAM = 1;
*/
StorageLocation[StorageLocation["RAM"] = 1] = "RAM";
/**
* /< Flash or some other method saved over reboot
*
* @generated from protobuf enum value: NONVOLATILE = 2;
*/
StorageLocation[StorageLocation["NONVOLATILE"] = 2] = "NONVOLATILE";
/**
* /< In case a device has two RAM locations
*
* @generated from protobuf enum value: RAM_EXTENDED = 3;
*/
StorageLocation[StorageLocation["RAM_EXTENDED"] = 3] = "RAM_EXTENDED";
/**
* /< In case a device has two non volatile locations
*
* @generated from protobuf enum value: NONVOLATILE_EXTENDED = 4;
*/
StorageLocation[StorageLocation["NONVOLATILE_EXTENDED"] = 4] = "NONVOLATILE_EXTENDED";
})(exports.StorageLocation || (exports.StorageLocation = {}));
/**
* / WiFi security type
*
* @generated from protobuf enum cr.WiFiSecurity
*/
exports.WiFiSecurity = void 0;
(function (WiFiSecurity) {
/**
* /< No security
*
* @generated from protobuf enum value: OPEN = 0;
*/
WiFiSecurity[WiFiSecurity["OPEN"] = 0] = "OPEN";
/**
* /< WEP
*
* @generated from protobuf enum value: WEP = 1;
*/
WiFiSecurity[WiFiSecurity["WEP"] = 1] = "WEP";
/**
* /< WPA
*
* @generated from protobuf enum value: WPA = 2;
*/
WiFiSecurity[WiFiSecurity["WPA"] = 2] = "WPA";
/**
* /< WPA2
*
* @generated from protobuf enum value: WPA2 = 3;
*/
WiFiSecurity[WiFiSecurity["WPA2"] = 3] = "WPA2";
/**
* /< WPA3
*
* @generated from protobuf enum value: WPA3 = 4;
*/
WiFiSecurity[WiFiSecurity["WPA3"] = 4] = "WPA3";
})(exports.WiFiSecurity || (exports.WiFiSecurity = {}));
/**
* / WiFi Band
*
* @generated from protobuf enum cr.WiFiBand
*/
exports.WiFiBand = void 0;
(function (WiFiBand) {
/**
* /< Not specified
*
* @generated from protobuf enum value: NO_BAND = 0;
*/
WiFiBand[WiFiBand["NO_BAND"] = 0] = "NO_BAND";
/**
* /< 2.4GHz
*
* @generated from protobuf enum value: BAND_2 = 2;
*/
WiFiBand[WiFiBand["BAND_2"] = 2] = "BAND_2";
/**
* /< 5GHz
*
* @generated from protobuf enum value: BAND_5 = 5;
*/
WiFiBand[WiFiBand["BAND_5"] = 5] = "BAND_5";
})(exports.WiFiBand || (exports.WiFiBand = {}));
/**
* / Reach uses these error codes.
*
* @generated from protobuf enum cr.ErrorCodes
*/
exports.ErrorCodes = void 0;
(function (ErrorCodes) {
/**
* /< Normal conclusion, no problem.
*
* @generated from protobuf enum value: NO_ERROR = 0;
*/
ErrorCodes[ErrorCodes["NO_ERROR"] = 0] = "NO_ERROR";
/**
* /< No data was produced
*
* @generated from protobuf enum value: NO_DATA = 1;
*/
ErrorCodes[ErrorCodes["NO_DATA"] = 1] = "NO_DATA";
/**
* /< The read failed.
*
* @generated from protobuf enum value: READ_FAILED = 2;
*/
ErrorCodes[ErrorCodes["READ_FAILED"] = 2] = "READ_FAILED";
/**
* /< The write failed.
*
* @generated from protobuf enum value: WRITE_FAILED = 3;
*/
ErrorCodes[ErrorCodes["WRITE_FAILED"] = 3] = "WRITE_FAILED";
/**
* /< returned by weak implementations
*
* @generated from protobuf enum value: NOT_IMPLEMENTED = 4;
*/
ErrorCodes[ErrorCodes["NOT_IMPLEMENTED"] = 4] = "NOT_IMPLEMENTED";
/**
* /< not yet used
*
* @generated from protobuf enum value: RESERVED_1 = 5;
*/
ErrorCodes[ErrorCodes["RESERVED_1"] = 5] = "RESERVED_1";
/**
* /< not yet used
*
* @generated from protobuf enum value: RESERVED_2 = 6;
*/
ErrorCodes[ErrorCodes["RESERVED_2"] = 6] = "RESERVED_2";
/**
* /< access not allowed
*
* @generated from protobuf enum value: PERMISSION_DENIED = 7;
*/
ErrorCodes[ErrorCodes["PERMISSION_DENIED"] = 7] = "PERMISSION_DENIED";
/**
* /< Requested a size larger than the buffer.
*
* @generated from protobuf enum value: BUFFER_TOO_SMALL = 8;
*/
ErrorCodes[ErrorCodes["BUFFER_TOO_SMALL"] = 8] = "BUFFER_TOO_SMALL";
/**
* /< Some function parameter is out of range
*
* @generated from protobuf enum value: INVALID_PARAMETER = 9;
*/
ErrorCodes[ErrorCodes["INVALID_PARAMETER"] = 9] = "INVALID_PARAMETER";
/**
* /< Received data does not match checksum
*
* @generated from protobuf enum value: CHECKSUM_MISMATCH = 10;
*/
ErrorCodes[ErrorCodes["CHECKSUM_MISMATCH"] = 10] = "CHECKSUM_MISMATCH";
/**
* /< Protobuf decoding failed
*
* @generated from protobuf enum value: DECODING_FAILED = 11;
*/
ErrorCodes[ErrorCodes["DECODING_FAILED"] = 11] = "DECODING_FAILED";
/**
* /< Protobuf encoding failed
*
* @generated from protobuf enum value: ENCODING_FAILED = 12;
*/
ErrorCodes[ErrorCodes["ENCODING_FAILED"] = 12] = "ENCODING_FAILED";
/**
* /< The current state machine does not handle this case.
*
* @generated from protobuf enum value: INVALID_STATE = 13;
*/
ErrorCodes[ErrorCodes["INVALID_STATE"] = 13] = "INVALID_STATE";
/**
* /< handler signals no response is necessary
*
* @generated from protobuf enum value: NO_RESPONSE = 14;
*/
ErrorCodes[ErrorCodes["NO_RESPONSE"] = 14] = "NO_RESPONSE";
/**
* /< bad file ID
*
* @generated from protobuf enum value: BAD_FILE = 15;
*/
ErrorCodes[ErrorCodes["BAD_FILE"] = 15] = "BAD_FILE";
/**
* /< A received packet has an unexpected serial number
*
* @generated from protobuf enum value: PACKET_COUNT_ERR = 16;
*/
ErrorCodes[ErrorCodes["PACKET_COUNT_ERR"] = 16] = "PACKET_COUNT_ERR";
/**
* /< Access denied due to challenge key
*
* @generated from protobuf enum value: CHALLENGE_FAILED = 17;
*/
ErrorCodes[ErrorCodes["CHALLENGE_FAILED"] = 17] = "CHALLENGE_FAILED";
/**
* /< not yet used
*
* @generated from protobuf enum value: RESERVED_3 = 18;
*/
ErrorCodes[ErrorCodes["RESERVED_3"] = 18] = "RESERVED_3";
/**
* /< Some required resource is not available.
*
* @generated from protobuf enum value: NO_RESOURCE = 19;
*/
ErrorCodes[ErrorCodes["NO_RESOURCE"] = 19] = "NO_RESOURCE";
/**
* /< The ID provided is not valid
*
* @generated from protobuf enum value: INVALID_ID = 20;
*/
ErrorCodes[ErrorCodes["INVALID_ID"] = 20] = "INVALID_ID";
/**
* /< The requested operation is incomplete and must be retried.
*
* @generated from protobuf enum value: INCOMPLETE = 21;
*/
ErrorCodes[ErrorCodes["INCOMPLETE"] = 21] = "INCOMPLETE";
/**
* /< Operation cancellation
*
* @generated from protobuf enum value: ABORT = 1000;
*/
ErrorCodes[ErrorCodes["ABORT"] = 1000] = "ABORT";
})(exports.ErrorCodes || (exports.ErrorCodes = {}));
/**
* / Describes file transfer state machine
*
* @generated from protobuf enum cr.FileTransferState
*/
exports.FileTransferState = void 0;
(function (FileTransferState) {
/**
* /< FILE_TRANSFER_INVALID
*
* @generated from protobuf enum value: FILE_TRANSFER_INVALID = 0;
*/
FileTransferState[FileTransferState["FILE_TRANSFER_INVALID"] = 0] = "FILE_TRANSFER_INVALID";
/**
* /< IDLE
*
* @generated from protobuf enum value: IDLE = 1;
*/
FileTransferState[FileTransferState["IDLE"] = 1] = "IDLE";
/**
* /< INIT
*
* @generated from protobuf enum value: INIT = 2;
*/
FileTransferState[FileTransferState["INIT"] = 2] = "INIT";
/**
* /< DATA
*
* @generated from protobuf enum value: DATA = 3;
*/
FileTransferState[FileTransferState["DATA"] = 3] = "DATA";
/**
* /< COMPLETE
*
* @generated from protobuf enum value: COMPLETE = 4;
*/
FileTransferState[FileTransferState["COMPLETE"] = 4] = "COMPLETE";
})(exports.FileTransferState || (exports.FileTransferState = {}));
/**
* / This describes the offset of each member of the BufferSizes message when packed for transmission
*
* @generated from protobuf enum cr.SizesOffsets
*/
exports.SizesOffsets = void 0;
(function (SizesOffsets) {
/**
* /< uint16_t, little endian
*
* @generated from protobuf enum value: MAX_MESSAGE_SIZE_OFFSET = 0;
*/
SizesOffsets[SizesOffsets["MAX_MESSAGE_SIZE_OFFSET"] = 0] = "MAX_MESSAGE_SIZE_OFFSET";
/**
* /< uint16_t, little endian
*
* @generated from protobuf enum value: BIG_DATA_BUFFER_SIZE_OFFSET = 2;
*/
SizesOffsets[SizesOffsets["BIG_DATA_BUFFER_SIZE_OFFSET"] = 2] = "BIG_DATA_BUFFER_SIZE_OFFSET";
/**
* /< uint8_t
*
* @generated from protobuf enum value: PARAMETER_BUFFER_COUNT_OFFSET = 4;
*/
SizesOffsets[SizesOffsets["PARAMETER_BUFFER_COUNT_OFFSET"] = 4] = "PARAMETER_BUFFER_COUNT_OFFSET";
/**
* /< uint8_t
*
* @generated from protobuf enum value: NUM_PARAMS_IN_RESPONSE_OFFSET = 5;
*/
SizesOffsets[SizesOffsets["NUM_PARAMS_IN_RESPONSE_OFFSET"] = 5] = "NUM_PARAMS_IN_RESPONSE_OFFSET";
/**
* /< uint8_t
*
* @generated from protobuf enum value: DESCRIPTION_LEN_OFFSET = 6;
*/
SizesOffsets[SizesOffsets["DESCRIPTION_LEN_OFFSET"] = 6] = "DESCRIPTION_LEN_OFFSET";
/**
* /< uint8_t
*
* @generated from protobuf enum value: MAX_PARAM_BYTES_OFFSET = 7;
*/
SizesOffsets[SizesOffsets["MAX_PARAM_BYTES_OFFSET"] = 7] = "MAX_PARAM_BYTES_OFFSET";
/**
* /< uint8_t
*
* @generated from protobuf enum value: PARAM_INFO_DESCRIPTION_LEN_OFFSET = 8;
*/
SizesOffsets[SizesOffsets["PARAM_INFO_DESCRIPTION_LEN_OFFSET"] = 8] = "PARAM_INFO_DESCRIPTION_LEN_OFFSET";
/**
* /< uint8_t
*
* @generated from protobuf enum value: MEDIUM_STRING_LEN_OFFSET = 9;
*/
SizesOffsets[SizesOffsets["MEDIUM_STRING_LEN_OFFSET"] = 9] = "MEDIUM_STRING_LEN_OFFSET";
/**
* /< uint8_t
*
* @generated from protobuf enum value: SHORT_STRING_LEN_OFFSET = 10;
*/
SizesOffsets[SizesOffsets["SHORT_STRING_LEN_OFFSET"] = 10] = "SHORT_STRING_LEN_OFFSET";
/**
* /< uint8_t
*
* @generated from protobuf enum value: PARAM_NOTIFY_CONFIG_COUNT_OFFSET = 11;
*/
SizesOffsets[SizesOffsets["PARAM_NOTIFY_CONFIG_COUNT_OFFSET"] = 11] = "PARAM_NOTIFY_CONFIG_COUNT_OFFSET";
/**
* /< uint8_t
*
* @generated from protobuf enum value: NUM_DESCRIPTORS_IN_RESPONSE_OFFSET = 12;
*/
SizesOffsets[SizesOffsets["NUM_DESCRIPTORS_IN_RESPONSE_OFFSET"] = 12] = "NUM_DESCRIPTORS_IN_RESPONSE_OFFSET";
/**
* /< uint8_t
*
* @generated from protobuf enum value: NUM_PARAM_NOTIFICATIONS_OFFSET = 13;
*/
SizesOffsets[SizesOffsets["NUM_PARAM_NOTIFICATIONS_OFFSET"] = 13] = "NUM_PARAM_NOTIFICATIONS_OFFSET";
/**
* /< uint8_t
*
* @generated from protobuf enum value: NUM_COMMANDS_IN_RESPONSE_OFFSET = 14;
*/
SizesOffsets[SizesOffsets["NUM_COMMANDS_IN_RESPONSE_OFFSET"] = 14] = "NUM_COMMANDS_IN_RESPONSE_OFFSET";
/**
* /< uint8_t
*
* @generated from protobuf enum value: COUNT_PARAM_DESC_IN_RESPONSE_OFFSET = 15;
*/
SizesOffsets[SizesOffsets["COUNT_PARAM_DESC_IN_RESPONSE_OFFSET"] = 15] = "COUNT_PARAM_DESC_IN_RESPONSE_OFFSET";
/**
* /< just the size
*
* @generated from protobuf enum value: STRUCTURE_SIZE = 16;
*/
SizesOffsets[SizesOffsets["STRUCTURE_SIZE"] = 16] = "STRUCTURE_SIZE";
})(exports.SizesOffsets || (exports.SizesOffsets = {}));
// @generated message type with reflection information, may provide speed optimized methods
class ReachMessageHeader$Type extends runtime.MessageType {
constructor() {
super("cr.ReachMessageHeader", [
{ no: 1, name: "message_type", kind: "scalar", T: 13 /*ScalarType.UINT32*/ },
{ no: 2, name: "endpoint_id", kind: "scalar", T: 13 /*ScalarType.UINT32*/ },
{ no: 3, name: "client_id", kind: "scalar", T: 13 /*ScalarType.UINT32*/ },
{ no: 4, name: "remaining_objects", kind: "scalar", T: 13 /*ScalarType.UINT32*/ },
{ no: 5, name: "transaction_id", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }
]);
}
create(value) {
const message = globalThis.Object.create((this.messagePrototype));
message.messageType = 0;
message.endpointId = 0;
message.clientId = 0;
message.remainingObjects = 0;
message.transactionId = 0;
if (value !== undefined)
runtime.reflectionMergePartial(this, message, value);
return message;
}
internalBinaryRead(reader, length, options, target) {
let message = target ?? this.create(), end = reader.pos + length;
while (reader.pos < end) {
let [fieldNo, wireType] = reader.tag();
switch (fieldNo) {
case /* uint32 message_type */ 1:
message.messageType = reader.uint32();
break;
case /* uint32 endpoint_id */ 2:
message.endpointId = reader.uint32();
break;
case /* uint32 client_id */ 3:
message.clientId = reader.uint32();
break;
case /* uint32 remaining_objects */ 4:
message.remainingObjects = reader.uint32();
break;
case /* uint32 transaction_id */ 5:
message.transactionId = reader.uint32();
break;
default:
let u = options.readUnknownField;
if (u === "throw")
throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
let d = reader.skip(wireType);
if (u !== false)
(u === true ? runtime.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
}
}
return message;
}
internalBinaryWrite(message, writer, options) {
/* uint32 message_type = 1; */
if (message.messageType !== 0)
writer.tag(1, runtime.WireType.Varint).uint32(message.messageType);
/* uint32 endpoint_id = 2; */
if (message.endpointId !== 0)
writer.tag(2, runtime.WireType.Varint).uint32(message.endpointId);
/* uint32 client_id = 3; */
if (message.clientId !== 0)
writer.tag(3, runtime.WireType.Varint).uint32(message.clientId);
/* uint32 remaining_objects = 4; */
if (message.remainingObjects !== 0)
writer.tag(4, runtime.WireType.Varint).uint32(message.remainingObjects);
/* uint32 transaction_id = 5; */
if (message.transactionId !== 0)
writer.tag(5, runtime.WireType.Varint).uint32(message.transactionId);
let u = options.writeUnknownFields;
if (u !== false)
(u == true ? runtime.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
return writer;
}
}
/**
* @generated MessageType for protobuf message cr.ReachMessageHeader
*/
const ReachMessageHeader = new ReachMessageHeader$Type();
// @generated message type with reflection information, may provide speed optimized methods
class ReachMessage$Type extends runtime.MessageType {
constructor() {
super("cr.ReachMessage", [
{ no: 1, name: "header", kind: "message", T: () => ReachMessageHeader },
{ no: 2, name: "payload", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }
]);
}
create(value) {
const message = globalThis.Object.create((this.messagePrototype));
message.payload = new Uint8Array(0);
if (value !== undefined)
runtime.reflectionMergePartial(this, message, value);
return message;
}
internalBinaryRead(reader, length, options, target) {
let message = target ?? this.create(), end = reader.pos + length;
while (reader.pos < end) {
let [fieldNo, wireType] = reader.tag();
switch (fieldNo) {
case /* cr.ReachMessageHeader header */ 1:
message.header = ReachMessageHeader.internalBinaryRead(reader, reader.uint32(), options, message.header);
break;
case /* bytes payload */ 2:
message.payload = reader.bytes();
break;
default:
let u = options.readUnknownField;
if (u === "throw")
throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
let d = reader.skip(wireType);
if (u !== false)
(u === true ? runtime.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
}
}
return message;
}
internalBinaryWrite(message, writer, options) {
/* cr.ReachMessageHeader header = 1; */
if (message.header)
ReachMessageHeader.internalBinaryWrite(message.header, writer.tag(1, runtime.WireType.LengthDelimited).fork(), options).join();
/* bytes payload = 2; */
if (message.payload.length)
writer.tag(2, runtime.WireType.LengthDelimited).bytes(message.payload);
let u = options.writeUnknownFields;
if (u !== false)
(u == true ? runtime.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
return writer;
}
}
/**
* @generated MessageType for protobuf message cr.ReachMessage
*/
const ReachMessage = new ReachMessage$Type();
// @generated message type with reflection information, may provide speed optimized methods
class AhsokaMessageHeader$Type extends runtime.MessageType {
constructor() {
super("cr.AhsokaMessageHeader", [
{ no: 1, name: "message_type", kind: "scalar", T: 5 /*ScalarType.INT32*/ },
{ no: 2, name: "transaction_id", kind: "scalar", T: 5 /*ScalarType.INT32*/ },
{ no: 3, name: "client_id", kind: "scalar", T: 12 /*ScalarType.BYTES*/ },
{ no: 4, name: "remaining_objects", kind: "scalar", T: 5 /*ScalarType.INT32*/ },
{ no: 5, name: "endpoint_id", kind: "scalar", T: 13 /*ScalarType.UINT32*/ },
{ no: 6, name: "is_message_compressed", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }
]);
}
create(value) {
const message = globalThis.Object.create((this.messagePrototype));
message.messageType = 0;
message.transactionId = 0;
message.clientId = new Uint8Array(0);
message.remainingObjects = 0;
message.endpointId = 0;
message.isMessageCompressed = false;
if (value !== undefined)
runtime.reflectionMergePartial(this, message, value);
return message;
}
internalBinaryRead(reader, length, options, target) {
let message = target ?? this.create(), end = reader.pos + length;
while (reader.pos < end) {
let [fieldNo, wireType] = reader.tag();
switch (fieldNo) {
case /* int32 message_type */ 1:
message.messageType = reader.int32();
break;
case /* int32 transaction_id */ 2:
message.transactionId = reader.int32();
break;
case /* bytes client_id */ 3:
message.clientId = reader.bytes();
break;
case /* int32 remaining_objects */ 4:
message.remainingObjects = reader.int32();
break;
case /* uint32 endpoint_id */ 5:
message.endpointId = reader.uint32();
break;
case /* bool is_message_compressed */ 6:
message.isMessageCompressed = reader.bool();
break;
default:
let u = options.readUnknownField;
if (u === "throw")
throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
let d = reader.skip(wireType);
if (u !== false)
(u === true ? runtime.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
}
}
return message;
}
internalBinaryWrite(message, writer, options) {
/* int32 message_type = 1; */
if (message.messageType !== 0)
writer.tag(1, runtime.WireType.Varint).int32(message.messageType);
/* int32 transaction_id = 2; */
if (message.transactionId !== 0)
writer.tag(2, runtime.WireType.Varint).int32(message.transactionId);
/* bytes client_id = 3; */
if (message.clientId.length)
writer.tag(3, runtime.WireType.LengthDelimited).bytes(message.clientId);
/* int32 remaining_objects = 4; */
if (message.remainingObjects !== 0)
writer.tag(4, runtime.WireType.Varint).int32(message.remainingObjects);
/* uint32 endpoint_id = 5; */
if (message.endpointId !== 0)
writer.tag(5, runtime.WireType.Varint).uint32(message.endpointId);
/* bool is_message_compressed = 6; */
if (message.isMessageCompressed !== false)
writer.tag(6, runtime.WireType.Varint).bool(message.isMessageCompressed);
let u = options.writeUnknownFields;
if (u !== false)
(u == true ? runtime.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
return writer;
}
}
/**
* @generated MessageType for protobuf message cr.AhsokaMessageHeader
*/
const AhsokaMessageHeader = new AhsokaMessageHeader$Type();
// @generated message type with reflection information, may provide speed optimized methods
class ErrorReport$Type extends runtime.MessageType {
constructor() {
super("cr.ErrorReport", [
{ no: 1, name: "result", kind: "scalar", T: 5 /*ScalarType.INT32*/ },
{ no: 2, name: "result_message", kind: "scalar", T: 9 /*ScalarType.STRING*/ }
]);
}
create(value) {
const message = globalThis.Object.create((this.messagePrototype));
message.result = 0;
message.resultMessage = "";
if (value !== undefined)
runtime.reflectionMergePartial(this, message, value);
return message;
}
internalBinaryRead(reader, length, options, target) {
let message = target ?? this.create(), end = reader.pos + length;
while (reader.pos < end) {
let [fieldNo, wireType] = reader.tag();
switch (fieldNo) {
case /* int32 result */ 1:
message.result = reader.int32();
break;
case /* string result_message */ 2:
message.resultMessage = reader.string();
break;
default:
let u = options.readUnknownField;
if (u === "throw")
throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
let d = reader.skip(wireType);
if (u !== false)
(u === true ? runtime.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
}
}
return message;
}
internalBinaryWrite(message, writer, options) {
/* int32 result = 1; */
if (message.result !== 0)
writer.tag(1, runtime.WireType.Varint).int32(message.result);
/* string result_message = 2; */
if (message.resultMessage !== "")
writer.tag(2, runtime.WireType.LengthDelimited).string(message.resultMessage);
let u = options.writeUnknownFields;
if (u !== false)
(u == true ? runtime.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
return writer;
}
}
/**
* @generated MessageType for protobuf message cr.ErrorReport
*/
const ErrorReport = new ErrorReport$Type();
// @generated message type with reflection information, may provide speed optimized methods
class PingRequest$Type extends runtime.MessageType {
constructor() {
super("cr.PingRequest", [
{ no: 1, name: "echo_data", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }
]);
}
create(value) {
const message = globalThis.Object.create((this.messagePrototype));
message.echoData = new Uint8Array(0);
if (value !== undefined)
runtime.reflectionMergePartial(this, message, value);
return message;
}
internalBinaryRead(reader, length, options, target) {
let message = target ?? this.create(), end = reader.pos + length;
while (reader.pos < end) {
let [fieldNo, wireType] = reader.tag();
switch (fieldNo) {
case /* bytes echo_data */ 1:
message.echoData = reader.bytes();
break;
default:
let u = options.readUnknownField;
if (u === "throw")
throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
let d = reader.skip(wireType);
if (u !== false)
(u === true ? runtime.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
}
}
return message;
}
internalBinaryWrite(message, writer, options) {
/* bytes echo_data = 1; */
if (message.echoData.length)
writer.tag(1, runtime.WireType.LengthDelimited).bytes(message.echoData);
let u = options.writeUnknownFields;
if (u !== false)
(u == true ? runtime.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
return writer;
}
}
/**
* @generated MessageType for protobuf message cr.PingRequest
*/
const PingRequest = new PingRequest$Type();
// @generated message type with reflection information, may provide speed optimized methods
class PingResponse$Type extends runtime.MessageType {
constructor() {
super("cr.PingResponse", [
{ no: 1, name: "echo_data", kind: "scalar", T: 12 /*ScalarType.BYTES*/ },
{ no: 2, name: "signal_strength", kind: "scalar", T: 5 /*ScalarType.INT32*/ }
]);
}
create(value) {
const message = globalThis.Object.create((this.messagePrototype));
message.echoData = new Uint8Array(0);
message.signalStrength = 0;
if (value !== undefined)
runtime.reflectionMergePartial(this, message, value);
return message;
}
internalBinaryRead(reader, length, options, target) {
let message = target ?? this.create(), end = reader.pos + length;
while (reader.pos < end) {
let [fieldNo, wireType] = reader.tag();
switch (fieldNo) {
case /* bytes echo_data */ 1:
message.echoData = reader.bytes();
break;
case /* int32 signal_strength */ 2:
message.signalStrength = reader.int32();
break;
default:
let u = options.readUnknownField;
if (u === "throw")
throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
let d = reader.skip(wireType);
if (u !== false)
(u === true ? runtime.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
}
}
return message;
}
internalBinaryWrite(message, writer, options) {
/* bytes echo_data = 1; */
if (message.echoData.length)
writer.tag(1, runtime.WireType.LengthDelimited).bytes(message.echoData);
/* int32 signal_strength = 2; */
if (message.signalStrength !== 0)
writer.tag(2, runtime.WireType.Varint).int32(message.signalStrength);
let u = options.writeUnknownFields;
if (u !== false)
(u == true ? runtime.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
return writer;
}
}
/**
* @generated MessageType for protobuf message cr.PingResponse
*/
const PingResponse = new PingResponse$Type();
// @generated message type with reflection information, may provide speed optimized methods
class DeviceInfoRequest$Type extends runtime.MessageType {
constructor() {
super("cr.DeviceInfoRequest", [
{ no: 1, name: "challenge_key", kind: "scalar", opt: true, T: 9 /*ScalarType.STRING*/ },
{ no: 2, name: "client_protocol_version", kind: "scalar", T: 9 /*ScalarType.STRING*/ }
]);
}
create(value) {
const message = globalThis.Object.create((this.messagePrototype));
message.clientProtocolVersion = "";
if (value !== undefined)
runtime.reflectionMergePartial(this, message, value);
return message;
}
internalBinaryRead(reader, length, options, target) {
let message = target ?? this.create(), end = reader.pos + length;
while (reader.pos < end) {
let [fieldNo, wireType] = reader.tag();
switch (fieldNo) {
case /* optional string challenge_key */ 1:
message.challengeKey = reader.string();
break;
case /* string client_protocol_version */ 2:
message.clientProtocolVersion = reader.string();
break;
default:
let u = options.readUnknownField;
if (u === "throw")
throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
let d = reader.skip(wireType);
if (u !== false)
(u === true ? runtime.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
}