/* eslint-disable */ import * as _m0 from "protobufjs/minimal"; export const protobufPackage = "protocol.module"; export enum ModuleType { Cargo = 0, LandingThruster = 1, Hub = 2, UNRECOGNIZED = -1, } export function moduleTypeFromJSON(object: any): ModuleType { switch (object) { case 0: case "Cargo": return ModuleType.Cargo; case 1: case "LandingThruster": return ModuleType.LandingThruster; case 2: case "Hub": return ModuleType.Hub; case -1: case "UNRECOGNIZED": default: return ModuleType.UNRECOGNIZED; } } export function moduleTypeToJSON(object: ModuleType): string { switch (object) { case ModuleType.Cargo: return "Cargo"; case ModuleType.LandingThruster: return "LandingThruster"; case ModuleType.Hub: return "Hub"; case ModuleType.UNRECOGNIZED: default: return "UNRECOGNIZED"; } } export interface Module { moduleType: ModuleType; rotation: number; x: number; y: number; } function createBaseModule(): Module { return { moduleType: 0, rotation: 0, x: 0, y: 0 }; } export const Module = { encode(message: Module, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { if (message.moduleType !== 0) { writer.uint32(8).int32(message.moduleType); } if (message.rotation !== 0) { writer.uint32(21).float(message.rotation); } if (message.x !== 0) { writer.uint32(29).float(message.x); } if (message.y !== 0) { writer.uint32(37).float(message.y); } return writer; }, decode(input: _m0.Reader | Uint8Array, length?: number): Module { const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseModule(); while (reader.pos < end) { const tag = reader.uint32(); switch (tag >>> 3) { case 1: if (tag != 8) { break; } message.moduleType = reader.int32() as any; continue; case 2: if (tag != 21) { break; } message.rotation = reader.float(); continue; case 3: if (tag != 29) { break; } message.x = reader.float(); continue; case 4: if (tag != 37) { break; } message.y = reader.float(); continue; } if ((tag & 7) == 4 || tag == 0) { break; } reader.skipType(tag & 7); } return message; }, fromJSON(object: any): Module { return { moduleType: isSet(object.moduleType) ? moduleTypeFromJSON(object.moduleType) : 0, rotation: isSet(object.rotation) ? Number(object.rotation) : 0, x: isSet(object.x) ? Number(object.x) : 0, y: isSet(object.y) ? Number(object.y) : 0, }; }, toJSON(message: Module): unknown { const obj: any = {}; message.moduleType !== undefined && (obj.moduleType = moduleTypeToJSON(message.moduleType)); message.rotation !== undefined && (obj.rotation = message.rotation); message.x !== undefined && (obj.x = message.x); message.y !== undefined && (obj.y = message.y); return obj; }, create, I>>(base?: I): Module { return Module.fromPartial(base ?? {}); }, fromPartial, I>>(object: I): Module { const message = createBaseModule(); message.moduleType = object.moduleType ?? 0; message.rotation = object.rotation ?? 0; message.x = object.x ?? 0; message.y = object.y ?? 0; return message; }, }; type Builtin = Date | Function | Uint8Array | string | number | boolean | undefined; export type DeepPartial = T extends Builtin ? T : T extends Array ? Array> : T extends ReadonlyArray ? ReadonlyArray> : T extends {} ? { [K in keyof T]?: DeepPartial } : Partial; type KeysOfUnion = T extends T ? keyof T : never; export type Exact = P extends Builtin ? P : P & { [K in keyof P]: Exact } & { [K in Exclude>]: never }; function isSet(value: any): boolean { return value !== null && value !== undefined; }