UNPKG

ardunno-cli

Version:
2,227 lines 83.6 kB
"use strict";
// Code generated by protoc-gen-ts_proto. DO NOT EDIT.
// versions:
//   protoc-gen-ts_proto  v1.181.2
//   protoc               v3.20.3
// source: cc/arduino/cli/commands/v1/common.proto
var __importDefault = (this && this.__importDefault) || function (mod) {
    return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.ProfileLibraryReference_LocalLibrary = exports.ProfileLibraryReference_IndexLibrary = exports.ProfileLibraryReference = exports.SketchProfile = exports.MonitorPortSetting = exports.MonitorPortConfiguration = exports.Sketch = exports.HelpResources = exports.Board = exports.InstalledPlatformReference = exports.PlatformRelease = exports.PlatformMetadata = exports.PlatformSummary_ReleasesEntry = exports.PlatformSummary = exports.Platform = exports.MissingProgrammerError = exports.Programmer = exports.TaskProgress = exports.DownloadProgressEnd = exports.DownloadProgressUpdate = exports.DownloadProgressStart = exports.DownloadProgress = exports.Instance = void 0;
/* eslint-disable */
const long_1 = __importDefault(require("long"));
const minimal_1 = __importDefault(require("protobufjs/minimal"));
function createBaseInstance() {
    return { id: 0 };
}
exports.Instance = {
    encode(message, writer = minimal_1.default.Writer.create()) {
        if (message.id !== 0) {
            writer.uint32(8).int32(message.id);
        }
        return writer;
    },
    decode(input, length) {
        const reader = input instanceof minimal_1.default.Reader ? input : minimal_1.default.Reader.create(input);
        let end = length === undefined ? reader.len : reader.pos + length;
        const message = createBaseInstance();
        while (reader.pos < end) {
            const tag = reader.uint32();
            switch (tag >>> 3) {
                case 1:
                    if (tag !== 8) {
                        break;
                    }
                    message.id = reader.int32();
                    continue;
            }
            if ((tag & 7) === 4 || tag === 0) {
                break;
            }
            reader.skipType(tag & 7);
        }
        return message;
    },
    fromJSON(object) {
        return { id: isSet(object.id) ? globalThis.Number(object.id) : 0 };
    },
    toJSON(message) {
        const obj = {};
        if (message.id !== 0) {
            obj.id = Math.round(message.id);
        }
        return obj;
    },
    create(base) {
        return exports.Instance.fromPartial(base !== null && base !== void 0 ? base : {});
    },
    fromPartial(object) {
        var _a;
        const message = createBaseInstance();
        message.id = (_a = object.id) !== null && _a !== void 0 ? _a : 0;
        return message;
    },
};
function createBaseDownloadProgress() {
    return { message: undefined };
}
exports.DownloadProgress = {
    encode(message, writer = minimal_1.default.Writer.create()) {
        var _a;
        switch ((_a = message.message) === null || _a === void 0 ? void 0 : _a.$case) {
            case 'start':
                exports.DownloadProgressStart.encode(message.message.start, writer.uint32(10).fork()).ldelim();
                break;
            case 'update':
                exports.DownloadProgressUpdate.encode(message.message.update, writer.uint32(18).fork()).ldelim();
                break;
            case 'end':
                exports.DownloadProgressEnd.encode(message.message.end, writer.uint32(26).fork()).ldelim();
                break;
        }
        return writer;
    },
    decode(input, length) {
        const reader = input instanceof minimal_1.default.Reader ? input : minimal_1.default.Reader.create(input);
        let end = length === undefined ? reader.len : reader.pos + length;
        const message = createBaseDownloadProgress();
        while (reader.pos < end) {
            const tag = reader.uint32();
            switch (tag >>> 3) {
                case 1:
                    if (tag !== 10) {
                        break;
                    }
                    message.message = {
                        $case: 'start',
                        start: exports.DownloadProgressStart.decode(reader, reader.uint32()),
                    };
                    continue;
                case 2:
                    if (tag !== 18) {
                        break;
                    }
                    message.message = {
                        $case: 'update',
                        update: exports.DownloadProgressUpdate.decode(reader, reader.uint32()),
                    };
                    continue;
                case 3:
                    if (tag !== 26) {
                        break;
                    }
                    message.message = {
                        $case: 'end',
                        end: exports.DownloadProgressEnd.decode(reader, reader.uint32()),
                    };
                    continue;
            }
            if ((tag & 7) === 4 || tag === 0) {
                break;
            }
            reader.skipType(tag & 7);
        }
        return message;
    },
    fromJSON(object) {
        return {
            message: isSet(object.start)
                ? {
                    $case: 'start',
                    start: exports.DownloadProgressStart.fromJSON(object.start),
                }
                : isSet(object.update)
                    ? {
                        $case: 'update',
                        update: exports.DownloadProgressUpdate.fromJSON(object.update),
                    }
                    : isSet(object.end)
                        ? { $case: 'end', end: exports.DownloadProgressEnd.fromJSON(object.end) }
                        : undefined,
        };
    },
    toJSON(message) {
        var _a, _b, _c;
        const obj = {};
        if (((_a = message.message) === null || _a === void 0 ? void 0 : _a.$case) === 'start') {
            obj.start = exports.DownloadProgressStart.toJSON(message.message.start);
        }
        if (((_b = message.message) === null || _b === void 0 ? void 0 : _b.$case) === 'update') {
            obj.update = exports.DownloadProgressUpdate.toJSON(message.message.update);
        }
        if (((_c = message.message) === null || _c === void 0 ? void 0 : _c.$case) === 'end') {
            obj.end = exports.DownloadProgressEnd.toJSON(message.message.end);
        }
        return obj;
    },
    create(base) {
        return exports.DownloadProgress.fromPartial(base !== null && base !== void 0 ? base : {});
    },
    fromPartial(object) {
        var _a, _b, _c, _d, _e, _f, _g, _h, _j;
        const message = createBaseDownloadProgress();
        if (((_a = object.message) === null || _a === void 0 ? void 0 : _a.$case) === 'start' &&
            ((_b = object.message) === null || _b === void 0 ? void 0 : _b.start) !== undefined &&
            ((_c = object.message) === null || _c === void 0 ? void 0 : _c.start) !== null) {
            message.message = {
                $case: 'start',
                start: exports.DownloadProgressStart.fromPartial(object.message.start),
            };
        }
        if (((_d = object.message) === null || _d === void 0 ? void 0 : _d.$case) === 'update' &&
            ((_e = object.message) === null || _e === void 0 ? void 0 : _e.update) !== undefined &&
            ((_f = object.message) === null || _f === void 0 ? void 0 : _f.update) !== null) {
            message.message = {
                $case: 'update',
                update: exports.DownloadProgressUpdate.fromPartial(object.message.update),
            };
        }
        if (((_g = object.message) === null || _g === void 0 ? void 0 : _g.$case) === 'end' &&
            ((_h = object.message) === null || _h === void 0 ? void 0 : _h.end) !== undefined &&
            ((_j = object.message) === null || _j === void 0 ? void 0 : _j.end) !== null) {
            message.message = {
                $case: 'end',
                end: exports.DownloadProgressEnd.fromPartial(object.message.end),
            };
        }
        return message;
    },
};
function createBaseDownloadProgressStart() {
    return { url: '', label: '' };
}
exports.DownloadProgressStart = {
    encode(message, writer = minimal_1.default.Writer.create()) {
        if (message.url !== '') {
            writer.uint32(10).string(message.url);
        }
        if (message.label !== '') {
            writer.uint32(18).string(message.label);
        }
        return writer;
    },
    decode(input, length) {
        const reader = input instanceof minimal_1.default.Reader ? input : minimal_1.default.Reader.create(input);
        let end = length === undefined ? reader.len : reader.pos + length;
        const message = createBaseDownloadProgressStart();
        while (reader.pos < end) {
            const tag = reader.uint32();
            switch (tag >>> 3) {
                case 1:
                    if (tag !== 10) {
                        break;
                    }
                    message.url = reader.string();
                    continue;
                case 2:
                    if (tag !== 18) {
                        break;
                    }
                    message.label = reader.string();
                    continue;
            }
            if ((tag & 7) === 4 || tag === 0) {
                break;
            }
            reader.skipType(tag & 7);
        }
        return message;
    },
    fromJSON(object) {
        return {
            url: isSet(object.url) ? globalThis.String(object.url) : '',
            label: isSet(object.label) ? globalThis.String(object.label) : '',
        };
    },
    toJSON(message) {
        const obj = {};
        if (message.url !== '') {
            obj.url = message.url;
        }
        if (message.label !== '') {
            obj.label = message.label;
        }
        return obj;
    },
    create(base) {
        return exports.DownloadProgressStart.fromPartial(base !== null && base !== void 0 ? base : {});
    },
    fromPartial(object) {
        var _a, _b;
        const message = createBaseDownloadProgressStart();
        message.url = (_a = object.url) !== null && _a !== void 0 ? _a : '';
        message.label = (_b = object.label) !== null && _b !== void 0 ? _b : '';
        return message;
    },
};
function createBaseDownloadProgressUpdate() {
    return { downloaded: 0, totalSize: 0 };
}
exports.DownloadProgressUpdate = {
    encode(message, writer = minimal_1.default.Writer.create()) {
        if (message.downloaded !== 0) {
            writer.uint32(8).int64(message.downloaded);
        }
        if (message.totalSize !== 0) {
            writer.uint32(16).int64(message.totalSize);
        }
        return writer;
    },
    decode(input, length) {
        const reader = input instanceof minimal_1.default.Reader ? input : minimal_1.default.Reader.create(input);
        let end = length === undefined ? reader.len : reader.pos + length;
        const message = createBaseDownloadProgressUpdate();
        while (reader.pos < end) {
            const tag = reader.uint32();
            switch (tag >>> 3) {
                case 1:
                    if (tag !== 8) {
                        break;
                    }
                    message.downloaded = longToNumber(reader.int64());
                    continue;
                case 2:
                    if (tag !== 16) {
                        break;
                    }
                    message.totalSize = longToNumber(reader.int64());
                    continue;
            }
            if ((tag & 7) === 4 || tag === 0) {
                break;
            }
            reader.skipType(tag & 7);
        }
        return message;
    },
    fromJSON(object) {
        return {
            downloaded: isSet(object.downloaded)
                ? globalThis.Number(object.downloaded)
                : 0,
            totalSize: isSet(object.totalSize)
                ? globalThis.Number(object.totalSize)
                : 0,
        };
    },
    toJSON(message) {
        const obj = {};
        if (message.downloaded !== 0) {
            obj.downloaded = Math.round(message.downloaded);
        }
        if (message.totalSize !== 0) {
            obj.totalSize = Math.round(message.totalSize);
        }
        return obj;
    },
    create(base) {
        return exports.DownloadProgressUpdate.fromPartial(base !== null && base !== void 0 ? base : {});
    },
    fromPartial(object) {
        var _a, _b;
        const message = createBaseDownloadProgressUpdate();
        message.downloaded = (_a = object.downloaded) !== null && _a !== void 0 ? _a : 0;
        message.totalSize = (_b = object.totalSize) !== null && _b !== void 0 ? _b : 0;
        return message;
    },
};
function createBaseDownloadProgressEnd() {
    return { success: false, message: '' };
}
exports.DownloadProgressEnd = {
    encode(message, writer = minimal_1.default.Writer.create()) {
        if (message.success !== false) {
            writer.uint32(8).bool(message.success);
        }
        if (message.message !== '') {
            writer.uint32(18).string(message.message);
        }
        return writer;
    },
    decode(input, length) {
        const reader = input instanceof minimal_1.default.Reader ? input : minimal_1.default.Reader.create(input);
        let end = length === undefined ? reader.len : reader.pos + length;
        const message = createBaseDownloadProgressEnd();
        while (reader.pos < end) {
            const tag = reader.uint32();
            switch (tag >>> 3) {
                case 1:
                    if (tag !== 8) {
                        break;
                    }
                    message.success = reader.bool();
                    continue;
                case 2:
                    if (tag !== 18) {
                        break;
                    }
                    message.message = reader.string();
                    continue;
            }
            if ((tag & 7) === 4 || tag === 0) {
                break;
            }
            reader.skipType(tag & 7);
        }
        return message;
    },
    fromJSON(object) {
        return {
            success: isSet(object.success)
                ? globalThis.Boolean(object.success)
                : false,
            message: isSet(object.message) ? globalThis.String(object.message) : '',
        };
    },
    toJSON(message) {
        const obj = {};
        if (message.success !== false) {
            obj.success = message.success;
        }
        if (message.message !== '') {
            obj.message = message.message;
        }
        return obj;
    },
    create(base) {
        return exports.DownloadProgressEnd.fromPartial(base !== null && base !== void 0 ? base : {});
    },
    fromPartial(object) {
        var _a, _b;
        const message = createBaseDownloadProgressEnd();
        message.success = (_a = object.success) !== null && _a !== void 0 ? _a : false;
        message.message = (_b = object.message) !== null && _b !== void 0 ? _b : '';
        return message;
    },
};
function createBaseTaskProgress() {
    return { name: '', message: '', completed: false, percent: 0 };
}
exports.TaskProgress = {
    encode(message, writer = minimal_1.default.Writer.create()) {
        if (message.name !== '') {
            writer.uint32(10).string(message.name);
        }
        if (message.message !== '') {
            writer.uint32(18).string(message.message);
        }
        if (message.completed !== false) {
            writer.uint32(24).bool(message.completed);
        }
        if (message.percent !== 0) {
            writer.uint32(37).float(message.percent);
        }
        return writer;
    },
    decode(input, length) {
        const reader = input instanceof minimal_1.default.Reader ? input : minimal_1.default.Reader.create(input);
        let end = length === undefined ? reader.len : reader.pos + length;
        const message = createBaseTaskProgress();
        while (reader.pos < end) {
            const tag = reader.uint32();
            switch (tag >>> 3) {
                case 1:
                    if (tag !== 10) {
                        break;
                    }
                    message.name = reader.string();
                    continue;
                case 2:
                    if (tag !== 18) {
                        break;
                    }
                    message.message = reader.string();
                    continue;
                case 3:
                    if (tag !== 24) {
                        break;
                    }
                    message.completed = reader.bool();
                    continue;
                case 4:
                    if (tag !== 37) {
                        break;
                    }
                    message.percent = reader.float();
                    continue;
            }
            if ((tag & 7) === 4 || tag === 0) {
                break;
            }
            reader.skipType(tag & 7);
        }
        return message;
    },
    fromJSON(object) {
        return {
            name: isSet(object.name) ? globalThis.String(object.name) : '',
            message: isSet(object.message) ? globalThis.String(object.message) : '',
            completed: isSet(object.completed)
                ? globalThis.Boolean(object.completed)
                : false,
            percent: isSet(object.percent) ? globalThis.Number(object.percent) : 0,
        };
    },
    toJSON(message) {
        const obj = {};
        if (message.name !== '') {
            obj.name = message.name;
        }
        if (message.message !== '') {
            obj.message = message.message;
        }
        if (message.completed !== false) {
            obj.completed = message.completed;
        }
        if (message.percent !== 0) {
            obj.percent = message.percent;
        }
        return obj;
    },
    create(base) {
        return exports.TaskProgress.fromPartial(base !== null && base !== void 0 ? base : {});
    },
    fromPartial(object) {
        var _a, _b, _c, _d;
        const message = createBaseTaskProgress();
        message.name = (_a = object.name) !== null && _a !== void 0 ? _a : '';
        message.message = (_b = object.message) !== null && _b !== void 0 ? _b : '';
        message.completed = (_c = object.completed) !== null && _c !== void 0 ? _c : false;
        message.percent = (_d = object.percent) !== null && _d !== void 0 ? _d : 0;
        return message;
    },
};
function createBaseProgrammer() {
    return { platform: '', id: '', name: '' };
}
exports.Programmer = {
    encode(message, writer = minimal_1.default.Writer.create()) {
        if (message.platform !== '') {
            writer.uint32(10).string(message.platform);
        }
        if (message.id !== '') {
            writer.uint32(18).string(message.id);
        }
        if (message.name !== '') {
            writer.uint32(26).string(message.name);
        }
        return writer;
    },
    decode(input, length) {
        const reader = input instanceof minimal_1.default.Reader ? input : minimal_1.default.Reader.create(input);
        let end = length === undefined ? reader.len : reader.pos + length;
        const message = createBaseProgrammer();
        while (reader.pos < end) {
            const tag = reader.uint32();
            switch (tag >>> 3) {
                case 1:
                    if (tag !== 10) {
                        break;
                    }
                    message.platform = reader.string();
                    continue;
                case 2:
                    if (tag !== 18) {
                        break;
                    }
                    message.id = reader.string();
                    continue;
                case 3:
                    if (tag !== 26) {
                        break;
                    }
                    message.name = reader.string();
                    continue;
            }
            if ((tag & 7) === 4 || tag === 0) {
                break;
            }
            reader.skipType(tag & 7);
        }
        return message;
    },
    fromJSON(object) {
        return {
            platform: isSet(object.platform)
                ? globalThis.String(object.platform)
                : '',
            id: isSet(object.id) ? globalThis.String(object.id) : '',
            name: isSet(object.name) ? globalThis.String(object.name) : '',
        };
    },
    toJSON(message) {
        const obj = {};
        if (message.platform !== '') {
            obj.platform = message.platform;
        }
        if (message.id !== '') {
            obj.id = message.id;
        }
        if (message.name !== '') {
            obj.name = message.name;
        }
        return obj;
    },
    create(base) {
        return exports.Programmer.fromPartial(base !== null && base !== void 0 ? base : {});
    },
    fromPartial(object) {
        var _a, _b, _c;
        const message = createBaseProgrammer();
        message.platform = (_a = object.platform) !== null && _a !== void 0 ? _a : '';
        message.id = (_b = object.id) !== null && _b !== void 0 ? _b : '';
        message.name = (_c = object.name) !== null && _c !== void 0 ? _c : '';
        return message;
    },
};
function createBaseMissingProgrammerError() {
    return {};
}
exports.MissingProgrammerError = {
    encode(_, writer = minimal_1.default.Writer.create()) {
        return writer;
    },
    decode(input, length) {
        const reader = input instanceof minimal_1.default.Reader ? input : minimal_1.default.Reader.create(input);
        let end = length === undefined ? reader.len : reader.pos + length;
        const message = createBaseMissingProgrammerError();
        while (reader.pos < end) {
            const tag = reader.uint32();
            switch (tag >>> 3) {
            }
            if ((tag & 7) === 4 || tag === 0) {
                break;
            }
            reader.skipType(tag & 7);
        }
        return message;
    },
    fromJSON(_) {
        return {};
    },
    toJSON(_) {
        const obj = {};
        return obj;
    },
    create(base) {
        return exports.MissingProgrammerError.fromPartial(base !== null && base !== void 0 ? base : {});
    },
    fromPartial(_) {
        const message = createBaseMissingProgrammerError();
        return message;
    },
};
function createBasePlatform() {
    return { metadata: undefined, release: undefined };
}
exports.Platform = {
    encode(message, writer = minimal_1.default.Writer.create()) {
        if (message.metadata !== undefined) {
            exports.PlatformMetadata.encode(message.metadata, writer.uint32(10).fork()).ldelim();
        }
        if (message.release !== undefined) {
            exports.PlatformRelease.encode(message.release, writer.uint32(18).fork()).ldelim();
        }
        return writer;
    },
    decode(input, length) {
        const reader = input instanceof minimal_1.default.Reader ? input : minimal_1.default.Reader.create(input);
        let end = length === undefined ? reader.len : reader.pos + length;
        const message = createBasePlatform();
        while (reader.pos < end) {
            const tag = reader.uint32();
            switch (tag >>> 3) {
                case 1:
                    if (tag !== 10) {
                        break;
                    }
                    message.metadata = exports.PlatformMetadata.decode(reader, reader.uint32());
                    continue;
                case 2:
                    if (tag !== 18) {
                        break;
                    }
                    message.release = exports.PlatformRelease.decode(reader, reader.uint32());
                    continue;
            }
            if ((tag & 7) === 4 || tag === 0) {
                break;
            }
            reader.skipType(tag & 7);
        }
        return message;
    },
    fromJSON(object) {
        return {
            metadata: isSet(object.metadata)
                ? exports.PlatformMetadata.fromJSON(object.metadata)
                : undefined,
            release: isSet(object.release)
                ? exports.PlatformRelease.fromJSON(object.release)
                : undefined,
        };
    },
    toJSON(message) {
        const obj = {};
        if (message.metadata !== undefined) {
            obj.metadata = exports.PlatformMetadata.toJSON(message.metadata);
        }
        if (message.release !== undefined) {
            obj.release = exports.PlatformRelease.toJSON(message.release);
        }
        return obj;
    },
    create(base) {
        return exports.Platform.fromPartial(base !== null && base !== void 0 ? base : {});
    },
    fromPartial(object) {
        const message = createBasePlatform();
        message.metadata =
            object.metadata !== undefined && object.metadata !== null
                ? exports.PlatformMetadata.fromPartial(object.metadata)
                : undefined;
        message.release =
            object.release !== undefined && object.release !== null
                ? exports.PlatformRelease.fromPartial(object.release)
                : undefined;
        return message;
    },
};
function createBasePlatformSummary() {
    return {
        metadata: undefined,
        releases: {},
        installedVersion: '',
        latestVersion: '',
    };
}
exports.PlatformSummary = {
    encode(message, writer = minimal_1.default.Writer.create()) {
        if (message.metadata !== undefined) {
            exports.PlatformMetadata.encode(message.metadata, writer.uint32(10).fork()).ldelim();
        }
        Object.entries(message.releases).forEach(([key, value]) => {
            exports.PlatformSummary_ReleasesEntry.encode({ key: key, value }, writer.uint32(18).fork()).ldelim();
        });
        if (message.installedVersion !== '') {
            writer.uint32(26).string(message.installedVersion);
        }
        if (message.latestVersion !== '') {
            writer.uint32(34).string(message.latestVersion);
        }
        return writer;
    },
    decode(input, length) {
        const reader = input instanceof minimal_1.default.Reader ? input : minimal_1.default.Reader.create(input);
        let end = length === undefined ? reader.len : reader.pos + length;
        const message = createBasePlatformSummary();
        while (reader.pos < end) {
            const tag = reader.uint32();
            switch (tag >>> 3) {
                case 1:
                    if (tag !== 10) {
                        break;
                    }
                    message.metadata = exports.PlatformMetadata.decode(reader, reader.uint32());
                    continue;
                case 2:
                    if (tag !== 18) {
                        break;
                    }
                    const entry2 = exports.PlatformSummary_ReleasesEntry.decode(reader, reader.uint32());
                    if (entry2.value !== undefined) {
                        message.releases[entry2.key] = entry2.value;
                    }
                    continue;
                case 3:
                    if (tag !== 26) {
                        break;
                    }
                    message.installedVersion = reader.string();
                    continue;
                case 4:
                    if (tag !== 34) {
                        break;
                    }
                    message.latestVersion = reader.string();
                    continue;
            }
            if ((tag & 7) === 4 || tag === 0) {
                break;
            }
            reader.skipType(tag & 7);
        }
        return message;
    },
    fromJSON(object) {
        return {
            metadata: isSet(object.metadata)
                ? exports.PlatformMetadata.fromJSON(object.metadata)
                : undefined,
            releases: isObject(object.releases)
                ? Object.entries(object.releases).reduce((acc, [key, value]) => {
                    acc[key] = exports.PlatformRelease.fromJSON(value);
                    return acc;
                }, {})
                : {},
            installedVersion: isSet(object.installedVersion)
                ? globalThis.String(object.installedVersion)
                : '',
            latestVersion: isSet(object.latestVersion)
                ? globalThis.String(object.latestVersion)
                : '',
        };
    },
    toJSON(message) {
        const obj = {};
        if (message.metadata !== undefined) {
            obj.metadata = exports.PlatformMetadata.toJSON(message.metadata);
        }
        if (message.releases) {
            const entries = Object.entries(message.releases);
            if (entries.length > 0) {
                obj.releases = {};
                entries.forEach(([k, v]) => {
                    obj.releases[k] = exports.PlatformRelease.toJSON(v);
                });
            }
        }
        if (message.installedVersion !== '') {
            obj.installedVersion = message.installedVersion;
        }
        if (message.latestVersion !== '') {
            obj.latestVersion = message.latestVersion;
        }
        return obj;
    },
    create(base) {
        return exports.PlatformSummary.fromPartial(base !== null && base !== void 0 ? base : {});
    },
    fromPartial(object) {
        var _a, _b, _c;
        const message = createBasePlatformSummary();
        message.metadata =
            object.metadata !== undefined && object.metadata !== null
                ? exports.PlatformMetadata.fromPartial(object.metadata)
                : undefined;
        message.releases = Object.entries((_a = object.releases) !== null && _a !== void 0 ? _a : {}).reduce((acc, [key, value]) => {
            if (value !== undefined) {
                acc[key] = exports.PlatformRelease.fromPartial(value);
            }
            return acc;
        }, {});
        message.installedVersion = (_b = object.installedVersion) !== null && _b !== void 0 ? _b : '';
        message.latestVersion = (_c = object.latestVersion) !== null && _c !== void 0 ? _c : '';
        return message;
    },
};
function createBasePlatformSummary_ReleasesEntry() {
    return { key: '', value: undefined };
}
exports.PlatformSummary_ReleasesEntry = {
    encode(message, writer = minimal_1.default.Writer.create()) {
        if (message.key !== '') {
            writer.uint32(10).string(message.key);
        }
        if (message.value !== undefined) {
            exports.PlatformRelease.encode(message.value, writer.uint32(18).fork()).ldelim();
        }
        return writer;
    },
    decode(input, length) {
        const reader = input instanceof minimal_1.default.Reader ? input : minimal_1.default.Reader.create(input);
        let end = length === undefined ? reader.len : reader.pos + length;
        const message = createBasePlatformSummary_ReleasesEntry();
        while (reader.pos < end) {
            const tag = reader.uint32();
            switch (tag >>> 3) {
                case 1:
                    if (tag !== 10) {
                        break;
                    }
                    message.key = reader.string();
                    continue;
                case 2:
                    if (tag !== 18) {
                        break;
                    }
                    message.value = exports.PlatformRelease.decode(reader, reader.uint32());
                    continue;
            }
            if ((tag & 7) === 4 || tag === 0) {
                break;
            }
            reader.skipType(tag & 7);
        }
        return message;
    },
    fromJSON(object) {
        return {
            key: isSet(object.key) ? globalThis.String(object.key) : '',
            value: isSet(object.value)
                ? exports.PlatformRelease.fromJSON(object.value)
                : undefined,
        };
    },
    toJSON(message) {
        const obj = {};
        if (message.key !== '') {
            obj.key = message.key;
        }
        if (message.value !== undefined) {
            obj.value = exports.PlatformRelease.toJSON(message.value);
        }
        return obj;
    },
    create(base) {
        return exports.PlatformSummary_ReleasesEntry.fromPartial(base !== null && base !== void 0 ? base : {});
    },
    fromPartial(object) {
        var _a;
        const message = createBasePlatformSummary_ReleasesEntry();
        message.key = (_a = object.key) !== null && _a !== void 0 ? _a : '';
        message.value =
            object.value !== undefined && object.value !== null
                ? exports.PlatformRelease.fromPartial(object.value)
                : undefined;
        return message;
    },
};
function createBasePlatformMetadata() {
    return {
        id: '',
        maintainer: '',
        website: '',
        email: '',
        manuallyInstalled: false,
        deprecated: false,
        indexed: false,
    };
}
exports.PlatformMetadata = {
    encode(message, writer = minimal_1.default.Writer.create()) {
        if (message.id !== '') {
            writer.uint32(10).string(message.id);
        }
        if (message.maintainer !== '') {
            writer.uint32(18).string(message.maintainer);
        }
        if (message.website !== '') {
            writer.uint32(26).string(message.website);
        }
        if (message.email !== '') {
            writer.uint32(34).string(message.email);
        }
        if (message.manuallyInstalled !== false) {
            writer.uint32(40).bool(message.manuallyInstalled);
        }
        if (message.deprecated !== false) {
            writer.uint32(48).bool(message.deprecated);
        }
        if (message.indexed !== false) {
            writer.uint32(56).bool(message.indexed);
        }
        return writer;
    },
    decode(input, length) {
        const reader = input instanceof minimal_1.default.Reader ? input : minimal_1.default.Reader.create(input);
        let end = length === undefined ? reader.len : reader.pos + length;
        const message = createBasePlatformMetadata();
        while (reader.pos < end) {
            const tag = reader.uint32();
            switch (tag >>> 3) {
                case 1:
                    if (tag !== 10) {
                        break;
                    }
                    message.id = reader.string();
                    continue;
                case 2:
                    if (tag !== 18) {
                        break;
                    }
                    message.maintainer = reader.string();
                    continue;
                case 3:
                    if (tag !== 26) {
                        break;
                    }
                    message.website = reader.string();
                    continue;
                case 4:
                    if (tag !== 34) {
                        break;
                    }
                    message.email = reader.string();
                    continue;
                case 5:
                    if (tag !== 40) {
                        break;
                    }
                    message.manuallyInstalled = reader.bool();
                    continue;
                case 6:
                    if (tag !== 48) {
                        break;
                    }
                    message.deprecated = reader.bool();
                    continue;
                case 7:
                    if (tag !== 56) {
                        break;
                    }
                    message.indexed = reader.bool();
                    continue;
            }
            if ((tag & 7) === 4 || tag === 0) {
                break;
            }
            reader.skipType(tag & 7);
        }
        return message;
    },
    fromJSON(object) {
        return {
            id: isSet(object.id) ? globalThis.String(object.id) : '',
            maintainer: isSet(object.maintainer)
                ? globalThis.String(object.maintainer)
                : '',
            website: isSet(object.website) ? globalThis.String(object.website) : '',
            email: isSet(object.email) ? globalThis.String(object.email) : '',
            manuallyInstalled: isSet(object.manuallyInstalled)
                ? globalThis.Boolean(object.manuallyInstalled)
                : false,
            deprecated: isSet(object.deprecated)
                ? globalThis.Boolean(object.deprecated)
                : false,
            indexed: isSet(object.indexed)
                ? globalThis.Boolean(object.indexed)
                : false,
        };
    },
    toJSON(message) {
        const obj = {};
        if (message.id !== '') {
            obj.id = message.id;
        }
        if (message.maintainer !== '') {
            obj.maintainer = message.maintainer;
        }
        if (message.website !== '') {
            obj.website = message.website;
        }
        if (message.email !== '') {
            obj.email = message.email;
        }
        if (message.manuallyInstalled !== false) {
            obj.manuallyInstalled = message.manuallyInstalled;
        }
        if (message.deprecated !== false) {
            obj.deprecated = message.deprecated;
        }
        if (message.indexed !== false) {
            obj.indexed = message.indexed;
        }
        return obj;
    },
    create(base) {
        return exports.PlatformMetadata.fromPartial(base !== null && base !== void 0 ? base : {});
    },
    fromPartial(object) {
        var _a, _b, _c, _d, _e, _f, _g;
        const message = createBasePlatformMetadata();
        message.id = (_a = object.id) !== null && _a !== void 0 ? _a : '';
        message.maintainer = (_b = object.maintainer) !== null && _b !== void 0 ? _b : '';
        message.website = (_c = object.website) !== null && _c !== void 0 ? _c : '';
        message.email = (_d = object.email) !== null && _d !== void 0 ? _d : '';
        message.manuallyInstalled = (_e = object.manuallyInstalled) !== null && _e !== void 0 ? _e : false;
        message.deprecated = (_f = object.deprecated) !== null && _f !== void 0 ? _f : false;
        message.indexed = (_g = object.indexed) !== null && _g !== void 0 ? _g : false;
        return message;
    },
};
function createBasePlatformRelease() {
    return {
        name: '',
        version: '',
        types: [],
        installed: false,
        boards: [],
        help: undefined,
        missingMetadata: false,
        deprecated: false,
        compatible: false,
    };
}
exports.PlatformRelease = {
    encode(message, writer = minimal_1.default.Writer.create()) {
        if (message.name !== '') {
            writer.uint32(10).string(message.name);
        }
        if (message.version !== '') {
            writer.uint32(18).string(message.version);
        }
        for (const v of message.types) {
            writer.uint32(26).string(v);
        }
        if (message.installed !== false) {
            writer.uint32(32).bool(message.installed);
        }
        for (const v of message.boards) {
            exports.Board.encode(v, writer.uint32(42).fork()).ldelim();
        }
        if (message.help !== undefined) {
            exports.HelpResources.encode(message.help, writer.uint32(50).fork()).ldelim();
        }
        if (message.missingMetadata !== false) {
            writer.uint32(56).bool(message.missingMetadata);
        }
        if (message.deprecated !== false) {
            writer.uint32(64).bool(message.deprecated);
        }
        if (message.compatible !== false) {
            writer.uint32(72).bool(message.compatible);
        }
        return writer;
    },
    decode(input, length) {
        const reader = input instanceof minimal_1.default.Reader ? input : minimal_1.default.Reader.create(input);
        let end = length === undefined ? reader.len : reader.pos + length;
        const message = createBasePlatformRelease();
        while (reader.pos < end) {
            const tag = reader.uint32();
            switch (tag >>> 3) {
                case 1:
                    if (tag !== 10) {
                        break;
                    }
                    message.name = reader.string();
                    continue;
                case 2:
                    if (tag !== 18) {
                        break;
                    }
                    message.version = reader.string();
                    continue;
                case 3:
                    if (tag !== 26) {
                        break;
                    }
                    message.types.push(reader.string());
                    continue;
                case 4:
                    if (tag !== 32) {
                        break;
                    }
                    message.installed = reader.bool();
                    continue;
                case 5:
                    if (tag !== 42) {
                        break;
                    }
                    message.boards.push(exports.Board.decode(reader, reader.uint32()));
                    continue;
                case 6:
                    if (tag !== 50) {
                        break;
                    }
                    message.help = exports.HelpResources.decode(reader, reader.uint32());
                    continue;
                case 7:
                    if (tag !== 56) {
                        break;
                    }
                    message.missingMetadata = reader.bool();
                    continue;
                case 8:
                    if (tag !== 64) {
                        break;
                    }
                    message.deprecated = reader.bool();
                    continue;
                case 9:
                    if (tag !== 72) {
                        break;
                    }
                    message.compatible = reader.bool();
                    continue;
            }
            if ((tag & 7) === 4 || tag === 0) {
                break;
            }
            reader.skipType(tag & 7);
        }
        return message;
    },
    fromJSON(object) {
        return {
            name: isSet(object.name) ? globalThis.String(object.name) : '',
            version: isSet(object.version) ? globalThis.String(object.version) : '',
            types: globalThis.Array.isArray(object === null || object === void 0 ? void 0 : object.types)
                ? object.types.map((e) => globalThis.String(e))
                : [],
            installed: isSet(object.installed)
                ? globalThis.Boolean(object.installed)
                : false,
            boards: globalThis.Array.isArray(object === null || object === void 0 ? void 0 : object.boards)
                ? object.boards.map((e) => exports.Board.fromJSON(e))
                : [],
            help: isSet(object.help)
                ? exports.HelpResources.fromJSON(object.help)
                : undefined,
            missingMetadata: isSet(object.missingMetadata)
                ? globalThis.Boolean(object.missingMetadata)
                : false,
            deprecated: isSet(object.deprecated)
                ? globalThis.Boolean(object.deprecated)
                : false,
            compatible: isSet(object.compatible)
                ? globalThis.Boolean(object.compatible)
                : false,
        };
    },
    toJSON(message) {
        var _a, _b;
        const obj = {};
        if (message.name !== '') {
            obj.name = message.name;
        }
        if (message.version !== '') {
            obj.version = message.version;
        }
        if ((_a = message.types) === null || _a === void 0 ? void 0 : _a.length) {
            obj.types = message.types;
        }
        if (message.installed !== false) {
            obj.installed = message.installed;
        }
        if ((_b = message.boards) === null || _b === void 0 ? void 0 : _b.length) {
            obj.boards = message.boards.map((e) => exports.Board.toJSON(e));
        }
        if (message.help !== undefined) {
            obj.help = exports.HelpResources.toJSON(message.help);
        }
        if (message.missingMetadata !== false) {
            obj.missingMetadata = message.missingMetadata;
        }
        if (message.deprecated !== false) {
            obj.deprecated = message.deprecated;
        }
        if (message.compatible !== false) {
            obj.compatible = message.compatible;
        }
        return obj;
    },
    create(base) {
        return exports.PlatformRelease.fromPartial(base !== null && base !== void 0 ? base : {});
    },
    fromPartial(object) {
        var _a, _b, _c, _d, _e, _f, _g, _h;
        const message = createBasePlatformRelease();
        message.name = (_a = object.name) !== null && _a !== void 0 ? _a : '';
        message.version = (_b = object.version) !== null && _b !== void 0 ? _b : '';
        message.types = ((_c = object.types) === null || _c === void 0 ? void 0 : _c.map((e) => e)) || [];
        message.installed = (_d = object.installed) !== null && _d !== void 0 ? _d : false;
        message.boards = ((_e = object.boards) === null || _e === void 0 ? void 0 : _e.map((e) => exports.Board.fromPartial(e))) || [];
        message.help =
            object.help !== undefined && object.help !== null
                ? exports.HelpResources.fromPartial(object.help)
                : undefined;
        message.missingMetadata = (_f = object.missingMetadata) !== null && _f !== void 0 ? _f : false;
        message.deprecated = (_g = object.deprecated) !== null && _g !== void 0 ? _g : false;
        message.compatible = (_h = object.compatible) !== null && _h !== void 0 ? _h : false;
        return message;
    },
};
function createBaseInstalledPlatformReference() {
    return { id: '', version: '', installDir: '', packageUrl: '' };
}
exports.InstalledPlatformReference = {
    encode(message, writer = minimal_1.default.Writer.create()) {
        if (message.id !== '') {
            writer.uint32(10).string(message.id);
        }
        if (message.version !== '') {
            writer.uint32(18).string(message.version);
        }
        if (message.installDir !== '') {
            writer.uint32(26).string(message.installDir);
        }
        if (message.packageUrl !== '') {
            writer.uint32(34).string(message.packageUrl);
        }
        return writer;
    },
    decode(input, length) {
        const reader = input instanceof minimal_1.default.Reader ? input : minimal_1.default.Reader.create(input);
        let end = length === undefined ? reader.len : reader.pos + length;
        const message = createBaseInstalledPlatformReference();
        while (reader.pos < end) {
            const tag = reader.uint32();
            switch (tag >>> 3) {
                case 1:
                    if (tag !== 10) {
                        break;
                    }
                    message.id = reader.string();
                    continue;
                case 2:
                    if (tag !== 18) {
                        break;
                    }
                    message.version = reader.string();
                    continue;
                case 3:
                    if (tag !== 26) {
                        break;
                    }
                    message.installDir = reader.string();
                    continue;
                case 4:
                    if (tag !== 34) {
                        break;
                    }
                    message.packageUrl = reader.string();
                    continue;
            }
            if ((tag & 7) === 4 || tag === 0) {
                break;
            }
            reader.skipType(tag & 7);
        }
        return message;
    },
    fromJSON(object) {
        return {
            id: isSet(object.id) ? globalThis.String(object.id) : '',
            version: isSet(object.version) ? globalThis.String(object.version) : '',
            installDir: isSet(object.installDir)
                ? globalThis.String(object.installDir)
                : '',
            packageUrl: isSet(object.packageUrl)
                ? globalThis.String(object.packageUrl)
                : '',
        };
    },
    toJSON(message) {
        const obj = {};
        if (message.id !== '') {
            obj.id = message.id;
        }
        if (message.version !== '') {
            obj.version = message.version;
        }
        if (message.installDir !== '') {
            obj.installDir = message.installDir;
        }
        if (message.packageUrl !== '') {
            obj.packageUrl = message.packageUrl;
        }
        return obj;
    },
    create(base) {
        return exports.InstalledPlatformReference.fromPartial(base !== null && base !== void 0 ? base : {});
    },
    fromPartial(object) {
        var _a, _b, _c, _d;
        const message = createBaseInstalledPlatformReference();
        message.id = (_a = object.id) !== null && _a !== void 0 ? _a : '';
        message.version = (_b = object.version) !== null && _b !== void 0 ? _b : '';
        message.installDir = (_c = object.installDir) !== null && _c !== void 0 ? _c : '';
        message.packageUrl = (_d = object.packageUrl) !== null && _d !== void 0 ? _d : '';
        return message;
    },
};
function createBaseBoard() {
    return { name: '', fqbn: '' };
}
exports.Board = {
    encode(message, writer = minimal_1.default.Writer.create()) {
        if (message.name !== '') {
            writer.uint32(10).string(message.name);
        }
        if (message.fqbn !== '') {
            writer.uint32(18).string(message.fqbn);
        }
        return writer;
    },
    decode(input, length) {
        const reader = input instanceof minimal_1.default.Reader ? input : minimal_1.default.Reader.create(input);
        let end = length === undefined ? reader.len : reader.pos + length;
        const message = createBaseBoard();
        while (reader.pos < end) {
            const tag = reader.uint32();
            switch (tag >>> 3) {
                case 1:
                    if (tag !== 10) {
                        break;
                    }
                    message.name = reader.string();
                    continue;
                case 2:
                    if (tag !== 18) {
                        break;
                    }
                    message.fqbn = reader.string();
                    continue;
            }
            if ((tag & 7) === 4 || tag === 0) {
                break;
            }
            reader.skipType(tag & 7);
        }
        return message;
    },
    fromJSON(object) {
        return {
            name: isSet(object.name) ? globalThis.String(object.name) : '',
            fqbn: isSet(object.fqbn) ? globalThis.String(object.fqbn) : '',
        };
    },
    toJSON(message) {
        const obj = {};
        if (message.name !== '') {
            obj.name = message.name;
        }
        if (message.fqbn !== '') {
            obj.fqbn = message.fqbn;
        }
        return obj;
    },
    create(base) {
        return exports.Board.fromPartial(base !== null && base !== void 0 ? base : {});
    },
    fromPartial(object) {
        var _a, _b;
        const message = createBaseBoard();
        message.name = (_a = object.name) !== null && _a !== void 0 ? _a : '';
        message.fqbn = (_b = object.fqbn) !== null && _b !== void 0 ? _b : '';
        return message;
    },
};
function createBaseHelpResources() {
    return { online: '' };
}
exports.HelpResources = {
    encode(message, writer = minimal_1.default.Writer.create()) {
        if (message.online !== '') {
            writer.uint32(10).string(message.online);
        }
        return writer;
    },
    decode(input, length) {
        const reader = input instanceof minimal_1.default.Reader ? input : minimal_1.default.Reader.create(input);
        let end = length === undefined ? reader.len : reader.pos + length;
        const message = createBaseHelpResources();
        while (reader.pos < end) {
            const tag = reader.uint32();
            switch (tag >>> 3) {
                case 1:
                    if (tag !== 10) {
                        break;
                    }
                    message.online = reader.string();
                    continue;
            }
            if ((tag & 7) === 4 || tag === 0) {
                break;
            }
            reader.skipType(tag & 7);
        }
        return message;
    },
    fromJSON(object) {
        return {
            online: isSet(object.online) ? globalThis.String(object.online) : '',
        };
    },
    toJSON(message) {
        const obj = {};
        if (message.online !== '') {
            obj.online = message.online;
        }
        return obj;
    },
    create(base) {
        return exports.HelpResources.fromPartial(base !== null && base !== void 0 ? base : {});
    },
    fromPartial(object) {
        var _a;
        const message = createBaseHelpResources();
        message.online = (_a = object.online) !== null && _a !== void 0 ? _a : '';
        return message;
    },
};
function createBaseSketch() {
    return {
        mainFile: '',
        locationPath: '',
        otherSketchFiles: [],
        additionalFiles: [],
        rootFolderFiles: [],
        defaultFqbn: '',
        defaultPort: '',
        defaultProtocol: '',
        profiles: [],
        defaultProfile: undefined,
        defaultProgrammer: '',
        defaultPortConfig: undefined,
    };
}
exports.Sketch = {
    encode(message, writer = minimal_1.default.Writer.create()) {
        if (message.mainFile !== '') {
            writer.uint32(10).string(message.mainFile);
        }
        if (message.locationPath !== '') {
            writer.uint32(18).string(message.locationPath);
        }
        for (const v of message.otherSketchFiles) {
            writer.uint32(26).string(v);
        }
        for (const v of message.additionalFiles) {
            writer.uint32(34).string(v);
        }
        for (const v of message.rootFolderFiles) {
            writer.uint32(42).string(v);
        }
        if (message.defaultFqbn !== '') {
            writer.uint32(50).string(message.defaultFqbn);
        }
        if (message.defaultPort !== '') {
            writer.uint32(58).string(message.defaultPort);
        }
        if (message.defaultProtocol !== '') {
            writer.uint32(66).string(message.defaultProtocol);
        }
        for (const v of message.profiles) {
            exports.SketchProfile.encode(v, writer.uint32(74).fork()).ldelim();
        }
        if (message.defaultProfile !== undefined) {
            exports.SketchProfile.encode(message.defaultProfile, writer.uint32(82).fork()).ldelim();
        }
        if (message.defaultProgrammer !== '') {
            writer.uint32(90).string(message.defaultProgrammer);
        }
        if (message.defaultPortConfig !== undefined) {
            exports.MonitorPortConfiguration.encode(message.defaultPortConfig, writer.uint32(98).fork()).ldelim();
        }
        return writer;
    },
    decode(input, length) {
        const reader = input instanceof minimal_1.default.Reader ? input : minimal_1.default.Reader.create(input);
        let end = length === undefined ? reader.len : reader.pos + length;
        const message = createBaseSketch();
        while (reader.pos < end) {
            const tag = reader.uint32();
            switch (tag >>> 3) {
                case 1:
                    if (tag !== 10) {
                        break;
                    }
                    message.mainFile = reader.string();
                    continue;
                case 2:
                    if (tag !== 18) {
                        break;
                    }
                    message.locationPath = reader.string();
                    continue;
                case 3:
                    if (tag !== 26) {
                        break;
                    }
                    message.otherSketchFiles.push(reader.string());
                    continue;
                case 4:
                    if (tag !== 34) {
                        break;
                    }
                    message.additionalFiles.push(reader.string());
                    continue;
                case 5:
                    if (tag !== 42) {
                        break;
                    }
                    message.rootFolderFiles.push(reader.string());
                    continue;
                case 6:
                    if (tag !== 50) {
                        break;
                    }
                    message.defaultFqbn = reader.string();
                    continue;
                case 7:
                    if (tag !== 58) {
                        break;
                    }
                    message.defaultPort = reader.string();
                    continue;
                case 8:
                    if (tag !== 66) {
                        break;
                    }
                    message.defaultProtocol = reader.string();
                    continue;
                case 9:
                    if (tag !== 74) {
                        break;
                    }
                    message.profiles.push(exports.SketchProfile.decode(reader, reader.uint32()));
                    continue;
                case 10:
                    if (tag !== 82) {
                        break;
                    }
                    message.defaultProfile = exports.SketchProfile.decode(reader, reader.uint32());
                    continue;
                case 11:
                    if (tag !== 90) {
                        break;
                    }
                    message.defaultProgrammer = reader.string();
                    continue;
                case 12:
                    if (tag !== 98) {
                        break;
                    }
                    message.defaultPortConfig = exports.MonitorPortConfiguration.decode(reader, reader.uint32());
                    continue;
            }
            if ((tag & 7) === 4 || tag === 0) {
                break;
            }
            reader.skipType(tag & 7);
        }
        return message;
    },
    fromJSON(object) {
        return {
            mainFile: isSet(object.mainFile)
                ? globalThis.String(object.mainFile)
                : '',
            locationPath: isSet(object.locationPath)
                ? globalThis.String(object.locationPath)
                : '',
            otherSketchFiles: globalThis.Array.isArray(object === null || object === void 0 ? void 0 : object.otherSketchFiles)
                ? object.otherSketchFiles.map((e) => globalThis.String(e))
                : [],
            additionalFiles: globalThis.Array.isArray(object === null || object === void 0 ? void 0 : object.additionalFiles)
                ? object.additionalFiles.map((e) => globalThis.String(e))
                : [],
            rootFolderFiles: globalThis.Array.isArray(object === null || object === void 0 ? void 0 : object.rootFolderFiles)
                ? object.rootFolderFiles.map((e) => globalThis.String(e))
                : [],
            defaultFqbn: isSet(object.defaultFqbn)
                ? globalThis.String(object.defaultFqbn)
                : '',
            defaultPort: isSet(object.defaultPort)
                ? globalThis.String(object.defaultPort)
                : '',
            defaultProtocol: isSet(object.defaultProtocol)
                ? globalThis.String(object.defaultProtocol)
                : '',
            profiles: globalThis.Array.isArray(object === null || object === void 0 ? void 0 : object.profiles)
                ? object.profiles.map((e) => exports.SketchProfile.fromJSON(e))
                : [],
            defaultProfile: isSet(object.defaultProfile)
                ? exports.SketchProfile.fromJSON(object.defaultProfile)
                : undefined,
            defaultProgrammer: isSet(object.defaultProgrammer)
                ? globalThis.String(object.defaultProgrammer)
                : '',
            defaultPortConfig: isSet(object.defaultPortConfig)
                ? exports.MonitorPortConfiguration.fromJSON(object.defaultPortConfig)
                : undefined,
        };
    },
    toJSON(message) {
        var _a, _b, _c, _d;
        const obj = {};
        if (message.mainFile !== '') {
            obj.mainFile = message.mainFile;
        }
        if (message.locationPath !== '') {
            obj.locationPath = message.locationPath;
        }
        if ((_a = message.otherSketchFiles) === null || _a === void 0 ? void 0 : _a.length) {
            obj.otherSketchFiles = message.otherSketchFiles;
        }
        if ((_b = message.additionalFiles) === null || _b === void 0 ? void 0 : _b.length) {
            obj.additionalFiles = message.additionalFiles;
        }
        if ((_c = message.rootFolderFiles) === null || _c === void 0 ? void 0 : _c.length) {
            obj.rootFolderFiles = message.rootFolderFiles;
        }
        if (message.defaultFqbn !== '') {
            obj.defaultFqbn = message.defaultFqbn;
        }
        if (message.defaultPort !== '') {
            obj.defaultPort = message.defaultPort;
        }
        if (message.defaultProtocol !== '') {
            obj.defaultProtocol = message.defaultProtocol;
        }
        if ((_d = message.profiles) === null || _d === void 0 ? void 0 : _d.length) {
            obj.profiles = message.profiles.map((e) => exports.SketchProfile.toJSON(e));
        }
        if (message.defaultProfile !== undefined) {
            obj.defaultProfile = exports.SketchProfile.toJSON(message.defaultProfile);
        }
        if (message.defaultProgrammer !== '') {
            obj.defaultProgrammer = message.defaultProgrammer;
        }
        if (message.defaultPortConfig !== undefined) {
            obj.defaultPortConfig = exports.MonitorPortConfiguration.toJSON(message.defaultPortConfig);
        }
        return obj;
    },
    create(base) {
        return exports.Sketch.fromPartial(base !== null && base !== void 0 ? base : {});
    },
    fromPartial(object) {
        var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
        const message = createBaseSketch();
        message.mainFile = (_a = object.mainFile) !== null && _a !== void 0 ? _a : '';
        message.locationPath = (_b = object.locationPath) !== null && _b !== void 0 ? _b : '';
        message.otherSketchFiles = ((_c = object.otherSketchFiles) === null || _c === void 0 ? void 0 : _c.map((e) => e)) || [];
        message.additionalFiles = ((_d = object.additionalFiles) === null || _d === void 0 ? void 0 : _d.map((e) => e)) || [];
        message.rootFolderFiles = ((_e = object.rootFolderFiles) === null || _e === void 0 ? void 0 : _e.map((e) => e)) || [];
        message.defaultFqbn = (_f = object.defaultFqbn) !== null && _f !== void 0 ? _f : '';
        message.defaultPort = (_g = object.defaultPort) !== null && _g !== void 0 ? _g : '';
        message.defaultProtocol = (_h = object.defaultProtocol) !== null && _h !== void 0 ? _h : '';
        message.profiles =
            ((_j = object.profiles) === null || _j === void 0 ? void 0 : _j.map((e) => exports.SketchProfile.fromPartial(e))) || [];
        message.defaultProfile =
            object.defaultProfile !== undefined && object.defaultProfile !== null
                ? exports.SketchProfile.fromPartial(object.defaultProfile)
                : undefined;
        message.defaultProgrammer = (_k = object.defaultProgrammer) !== null && _k !== void 0 ? _k : '';
        message.defaultPortConfig =
            object.defaultPortConfig !== undefined &&
                object.defaultPortConfig !== null
                ? exports.MonitorPortConfiguration.fromPartial(object.defaultPortConfig)
                : undefined;
        return message;
    },
};
function createBaseMonitorPortConfiguration() {
    return { settings: [] };
}
exports.MonitorPortConfiguration = {
    encode(message, writer = minimal_1.default.Writer.create()) {
        for (const v of message.settings) {
            exports.MonitorPortSetting.encode(v, writer.uint32(10).fork()).ldelim();
        }
        return writer;
    },
    decode(input, length) {
        const reader = input instanceof minimal_1.default.Reader ? input : minimal_1.default.Reader.create(input);
        let end = length === undefined ? reader.len : reader.pos + length;
        const message = createBaseMonitorPortConfiguration();
        while (reader.pos < end) {
            const tag = reader.uint32();
            switch (tag >>> 3) {
                case 1:
                    if (tag !== 10) {
                        break;
                    }
                    message.settings.push(exports.MonitorPortSetting.decode(reader, reader.uint32()));
                    continue;
            }
            if ((tag & 7) === 4 || tag === 0) {
                break;
            }
            reader.skipType(tag & 7);
        }
        return message;
    },
    fromJSON(object) {
        return {
            settings: globalThis.Array.isArray(object === null || object === void 0 ? void 0 : object.settings)
                ? object.settings.map((e) => exports.MonitorPortSetting.fromJSON(e))
                : [],
        };
    },
    toJSON(message) {
        var _a;
        const obj = {};
        if ((_a = message.settings) === null || _a === void 0 ? void 0 : _a.length) {
            obj.settings = message.settings.map((e) => exports.MonitorPortSetting.toJSON(e));
        }
        return obj;
    },
    create(base) {
        return exports.MonitorPortConfiguration.fromPartial(base !== null && base !== void 0 ? base : {});
    },
    fromPartial(object) {
        var _a;
        const message = createBaseMonitorPortConfiguration();
        message.settings =
            ((_a = object.settings) === null || _a === void 0 ? void 0 : _a.map((e) => exports.MonitorPortSetting.fromPartial(e))) || [];
        return message;
    },
};
function createBaseMonitorPortSetting() {
    return { settingId: '', value: '' };
}
exports.MonitorPortSetting = {
    encode(message, writer = minimal_1.default.Writer.create()) {
        if (message.settingId !== '') {
            writer.uint32(10).string(message.settingId);
        }
        if (message.value !== '') {
            writer.uint32(18).string(message.value);
        }
        return writer;
    },
    decode(input, length) {
        const reader = input instanceof minimal_1.default.Reader ? input : minimal_1.default.Reader.create(input);
        let end = length === undefined ? reader.len : reader.pos + length;
        const message = createBaseMonitorPortSetting();
        while (reader.pos < end) {
            const tag = reader.uint32();
            switch (tag >>> 3) {
                case 1:
                    if (tag !== 10) {
                        break;
                    }
                    message.settingId = reader.string();
                    continue;
                case 2:
                    if (tag !== 18) {
                        break;
                    }
                    message.value = reader.string();
                    continue;
            }
            if ((tag & 7) === 4 || tag === 0) {
                break;
            }
            reader.skipType(tag & 7);
        }
        return message;
    },
    fromJSON(object) {
        return {
            settingId: isSet(object.settingId)
                ? globalThis.String(object.settingId)
                : '',
            value: isSet(object.value) ? globalThis.String(object.value) : '',
        };
    },
    toJSON(message) {
        const obj = {};
        if (message.settingId !== '') {
            obj.settingId = message.settingId;
        }
        if (message.value !== '') {
            obj.value = message.value;
        }
        return obj;
    },
    create(base) {
        return exports.MonitorPortSetting.fromPartial(base !== null && base !== void 0 ? base : {});
    },
    fromPartial(object) {
        var _a, _b;
        const message = createBaseMonitorPortSetting();
        message.settingId = (_a = object.settingId) !== null && _a !== void 0 ? _a : '';
        message.value = (_b = object.value) !== null && _b !== void 0 ? _b : '';
        return message;
    },
};
function createBaseSketchProfile() {
    return {
        name: '',
        fqbn: '',
        programmer: '',
        port: '',
        portConfig: undefined,
        protocol: '',
    };
}
exports.SketchProfile = {
    encode(message, writer = minimal_1.default.Writer.create()) {
        if (message.name !== '') {
            writer.uint32(10).string(message.name);
        }
        if (message.fqbn !== '') {
            writer.uint32(18).string(message.fqbn);
        }
        if (message.programmer !== '') {
            writer.uint32(26).string(message.programmer);
        }
        if (message.port !== '') {
            writer.uint32(34).string(message.port);
        }
        if (message.portConfig !== undefined) {
            exports.MonitorPortConfiguration.encode(message.portConfig, writer.uint32(42).fork()).ldelim();
        }
        if (message.protocol !== '') {
            writer.uint32(50).string(message.protocol);
        }
        return writer;
    },
    decode(input, length) {
        const reader = input instanceof minimal_1.default.Reader ? input : minimal_1.default.Reader.create(input);
        let end = length === undefined ? reader.len : reader.pos + length;
        const message = createBaseSketchProfile();
        while (reader.pos < end) {
            const tag = reader.uint32();
            switch (tag >>> 3) {
                case 1:
                    if (tag !== 10) {
                        break;
                    }
                    message.name = reader.string();
                    continue;
                case 2:
                    if (tag !== 18) {
                        break;
                    }
                    message.fqbn = reader.string();
                    continue;
                case 3:
                    if (tag !== 26) {
                        break;
                    }
                    message.programmer = reader.string();
                    continue;
                case 4:
                    if (tag !== 34) {
                        break;
                    }
                    message.port = reader.string();
                    continue;
                case 5:
                    if (tag !== 42) {
                        break;
                    }
                    message.portConfig = exports.MonitorPortConfiguration.decode(reader, reader.uint32());
                    continue;
                case 6:
                    if (tag !== 50) {
                        break;
                    }
                    message.protocol = reader.string();
                    continue;
            }
            if ((tag & 7) === 4 || tag === 0) {
                break;
            }
            reader.skipType(tag & 7);
        }
        return message;
    },
    fromJSON(object) {
        return {
            name: isSet(object.name) ? globalThis.String(object.name) : '',
            fqbn: isSet(object.fqbn) ? globalThis.String(object.fqbn) : '',
            programmer: isSet(object.programmer)
                ? globalThis.String(object.programmer)
                : '',
            port: isSet(object.port) ? globalThis.String(object.port) : '',
            portConfig: isSet(object.portConfig)
                ? exports.MonitorPortConfiguration.fromJSON(object.portConfig)
                : undefined,
            protocol: isSet(object.protocol)
                ? globalThis.String(object.protocol)
                : '',
        };
    },
    toJSON(message) {
        const obj = {};
        if (message.name !== '') {
            obj.name = message.name;
        }
        if (message.fqbn !== '') {
            obj.fqbn = message.fqbn;
        }
        if (message.programmer !== '') {
            obj.programmer = message.programmer;
        }
        if (message.port !== '') {
            obj.port = message.port;
        }
        if (message.portConfig !== undefined) {
            obj.portConfig = exports.MonitorPortConfiguration.toJSON(message.portConfig);
        }
        if (message.protocol !== '') {
            obj.protocol = message.protocol;
        }
        return obj;
    },
    create(base) {
        return exports.SketchProfile.fromPartial(base !== null && base !== void 0 ? base : {});
    },
    fromPartial(object) {
        var _a, _b, _c, _d, _e;
        const message = createBaseSketchProfile();
        message.name = (_a = object.name) !== null && _a !== void 0 ? _a : '';
        message.fqbn = (_b = object.fqbn) !== null && _b !== void 0 ? _b : '';
        message.programmer = (_c = object.programmer) !== null && _c !== void 0 ? _c : '';
        message.port = (_d = object.port) !== null && _d !== void 0 ? _d : '';
        message.portConfig =
            object.portConfig !== undefined && object.portConfig !== null
                ? exports.MonitorPortConfiguration.fromPartial(object.portConfig)
                : undefined;
        message.protocol = (_e = object.protocol) !== null && _e !== void 0 ? _e : '';
        return message;
    },
};
function createBaseProfileLibraryReference() {
    return { library: undefined };
}
exports.ProfileLibraryReference = {
    encode(message, writer = minimal_1.default.Writer.create()) {
        var _a;
        switch ((_a = message.library) === null || _a === void 0 ? void 0 : _a.$case) {
            case 'indexLibrary':
                exports.ProfileLibraryReference_IndexLibrary.encode(message.library.indexLibrary, writer.uint32(10).fork()).ldelim();
                break;
            case 'localLibrary':
                exports.ProfileLibraryReference_LocalLibrary.encode(message.library.localLibrary, writer.uint32(18).fork()).ldelim();
                break;
        }
        return writer;
    },
    decode(input, length) {
        const reader = input instanceof minimal_1.default.Reader ? input : minimal_1.default.Reader.create(input);
        let end = length === undefined ? reader.len : reader.pos + length;
        const message = createBaseProfileLibraryReference();
        while (reader.pos < end) {
            const tag = reader.uint32();
            switch (tag >>> 3) {
                case 1:
                    if (tag !== 10) {
                        break;
                    }
                    message.library = {
                        $case: 'indexLibrary',
                        indexLibrary: exports.ProfileLibraryReference_IndexLibrary.decode(reader, reader.uint32()),
                    };
                    continue;
                case 2:
                    if (tag !== 18) {
                        break;
                    }
                    message.library = {
                        $case: 'localLibrary',
                        localLibrary: exports.ProfileLibraryReference_LocalLibrary.decode(reader, reader.uint32()),
                    };
                    continue;
            }
            if ((tag & 7) === 4 || tag === 0) {
                break;
            }
            reader.skipType(tag & 7);
        }
        return message;
    },
    fromJSON(object) {
        return {
            library: isSet(object.indexLibrary)
                ? {
                    $case: 'indexLibrary',
                    indexLibrary: exports.ProfileLibraryReference_IndexLibrary.fromJSON(object.indexLibrary),
                }
                : isSet(object.localLibrary)
                    ? {
                        $case: 'localLibrary',
                        localLibrary: exports.ProfileLibraryReference_LocalLibrary.fromJSON(object.localLibrary),
                    }
                    : undefined,
        };
    },
    toJSON(message) {
        var _a, _b;
        const obj = {};
        if (((_a = message.library) === null || _a === void 0 ? void 0 : _a.$case) === 'indexLibrary') {
            obj.indexLibrary = exports.ProfileLibraryReference_IndexLibrary.toJSON(message.library.indexLibrary);
        }
        if (((_b = message.library) === null || _b === void 0 ? void 0 : _b.$case) === 'localLibrary') {
            obj.localLibrary = exports.ProfileLibraryReference_LocalLibrary.toJSON(message.library.localLibrary);
        }
        return obj;
    },
    create(base) {
        return exports.ProfileLibraryReference.fromPartial(base !== null && base !== void 0 ? base : {});
    },
    fromPartial(object) {
        var _a, _b, _c, _d, _e, _f;
        const message = createBaseProfileLibraryReference();
        if (((_a = object.library) === null || _a === void 0 ? void 0 : _a.$case) === 'indexLibrary' &&
            ((_b = object.library) === null || _b === void 0 ? void 0 : _b.indexLibrary) !== undefined &&
            ((_c = object.library) === null || _c === void 0 ? void 0 : _c.indexLibrary) !== null) {
            message.library = {
                $case: 'indexLibrary',
                indexLibrary: exports.ProfileLibraryReference_IndexLibrary.fromPartial(object.library.indexLibrary),
            };
        }
        if (((_d = object.library) === null || _d === void 0 ? void 0 : _d.$case) === 'localLibrary' &&
            ((_e = object.library) === null || _e === void 0 ? void 0 : _e.localLibrary) !== undefined &&
            ((_f = object.library) === null || _f === void 0 ? void 0 : _f.localLibrary) !== null) {
            message.library = {
                $case: 'localLibrary',
                localLibrary: exports.ProfileLibraryReference_LocalLibrary.fromPartial(object.library.localLibrary),
            };
        }
        return message;
    },
};
function createBaseProfileLibraryReference_IndexLibrary() {
    return { name: '', version: '', isDependency: false };
}
exports.ProfileLibraryReference_IndexLibrary = {
    encode(message, writer = minimal_1.default.Writer.create()) {
        if (message.name !== '') {
            writer.uint32(10).string(message.name);
        }
        if (message.version !== '') {
            writer.uint32(18).string(message.version);
        }
        if (message.isDependency !== false) {
            writer.uint32(24).bool(message.isDependency);
        }
        return writer;
    },
    decode(input, length) {
        const reader = input instanceof minimal_1.default.Reader ? input : minimal_1.default.Reader.create(input);
        let end = length === undefined ? reader.len : reader.pos + length;
        const message = createBaseProfileLibraryReference_IndexLibrary();
        while (reader.pos < end) {
            const tag = reader.uint32();
            switch (tag >>> 3) {
                case 1:
                    if (tag !== 10) {
                        break;
                    }
                    message.name = reader.string();
                    continue;
                case 2:
                    if (tag !== 18) {
                        break;
                    }
                    message.version = reader.string();
                    continue;
                case 3:
                    if (tag !== 24) {
                        break;
                    }
                    message.isDependency = reader.bool();
                    continue;
            }
            if ((tag & 7) === 4 || tag === 0) {
                break;
            }
            reader.skipType(tag & 7);
        }
        return message;
    },
    fromJSON(object) {
        return {
            name: isSet(object.name) ? globalThis.String(object.name) : '',
            version: isSet(object.version) ? globalThis.String(object.version) : '',
            isDependency: isSet(object.isDependency)
                ? globalThis.Boolean(object.isDependency)
                : false,
        };
    },
    toJSON(message) {
        const obj = {};
        if (message.name !== '') {
            obj.name = message.name;
        }
        if (message.version !== '') {
            obj.version = message.version;
        }
        if (message.isDependency !== false) {
            obj.isDependency = message.isDependency;
        }
        return obj;
    },
    create(base) {
        return exports.ProfileLibraryReference_IndexLibrary.fromPartial(base !== null && base !== void 0 ? base : {});
    },
    fromPartial(object) {
        var _a, _b, _c;
        const message = createBaseProfileLibraryReference_IndexLibrary();
        message.name = (_a = object.name) !== null && _a !== void 0 ? _a : '';
        message.version = (_b = object.version) !== null && _b !== void 0 ? _b : '';
        message.isDependency = (_c = object.isDependency) !== null && _c !== void 0 ? _c : false;
        return message;
    },
};
function createBaseProfileLibraryReference_LocalLibrary() {
    return { path: '' };
}
exports.ProfileLibraryReference_LocalLibrary = {
    encode(message, writer = minimal_1.default.Writer.create()) {
        if (message.path !== '') {
            writer.uint32(10).string(message.path);
        }
        return writer;
    },
    decode(input, length) {
        const reader = input instanceof minimal_1.default.Reader ? input : minimal_1.default.Reader.create(input);
        let end = length === undefined ? reader.len : reader.pos + length;
        const message = createBaseProfileLibraryReference_LocalLibrary();
        while (reader.pos < end) {
            const tag = reader.uint32();
            switch (tag >>> 3) {
                case 1:
                    if (tag !== 10) {
                        break;
                    }
                    message.path = reader.string();
                    continue;
            }
            if ((tag & 7) === 4 || tag === 0) {
                break;
            }
            reader.skipType(tag & 7);
        }
        return message;
    },
    fromJSON(object) {
        return { path: isSet(object.path) ? globalThis.String(object.path) : '' };
    },
    toJSON(message) {
        const obj = {};
        if (message.path !== '') {
            obj.path = message.path;
        }
        return obj;
    },
    create(base) {
        return exports.ProfileLibraryReference_LocalLibrary.fromPartial(base !== null && base !== void 0 ? base : {});
    },
    fromPartial(object) {
        var _a;
        const message = createBaseProfileLibraryReference_LocalLibrary();
        message.path = (_a = object.path) !== null && _a !== void 0 ? _a : '';
        return message;
    },
};
function longToNumber(long) {
    if (long.gt(globalThis.Number.MAX_SAFE_INTEGER)) {
        throw new globalThis.Error('Value is larger than Number.MAX_SAFE_INTEGER');
    }
    if (long.lt(globalThis.Number.MIN_SAFE_INTEGER)) {
        throw new globalThis.Error('Value is smaller than Number.MIN_SAFE_INTEGER');
    }
    return long.toNumber();
}
if (minimal_1.default.util.Long !== long_1.default) {
    minimal_1.default.util.Long = long_1.default;
    minimal_1.default.configure();
}
function isObject(value) {
    return typeof value === 'object' && value !== null;
}
function isSet(value) {
    return value !== null && value !== undefined;
}