"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
const light_1 = require("protobufjs/light");
const protobuf_1 = require("../protobuf");
const skipblock_1 = require("./skipblock");
class GetAllSkipChainIDs extends light_1.Message {
    /**
     * @see README#Message classes
     */
    static register() {
        protobuf_1.registerMessage("GetAllSkipChainIDs", GetAllSkipChainIDs);
    }
}
exports.GetAllSkipChainIDs = GetAllSkipChainIDs;
class GetAllSkipChainIDsReply extends light_1.Message {
    constructor(props) {
        super(props);
        this.skipChainIDs = this.skipChainIDs || [];
    }
    /**
     * @see README#Message classes
     */
    static register() {
        protobuf_1.registerMessage("GetAllSkipChainIDsReply", GetAllSkipChainIDsReply);
    }
}
exports.GetAllSkipChainIDsReply = GetAllSkipChainIDsReply;
class StoreSkipBlock extends light_1.Message {
    constructor(properties) {
        super(properties);
        this.targetSkipChainID = Buffer.from(this.targetSkipChainID || protobuf_1.EMPTY_BUFFER);
        this.signature = Buffer.from(this.signature || protobuf_1.EMPTY_BUFFER);
    }
    /**
     * @see README#Message classes
     */
    static register() {
        protobuf_1.registerMessage("StoreSkipBlock", StoreSkipBlock, skipblock_1.SkipBlock);
    }
}
exports.StoreSkipBlock = StoreSkipBlock;
class StoreSkipBlockReply extends light_1.Message {
    /**
     * @see README#Message classes
     */
    static register() {
        protobuf_1.registerMessage("StoreSkipBlockReply", StoreSkipBlockReply, skipblock_1.SkipBlock);
    }
}
exports.StoreSkipBlockReply = StoreSkipBlockReply;
class GetSingleBlock extends light_1.Message {
    constructor(props) {
        super(props);
        this.id = Buffer.from(this.id || protobuf_1.EMPTY_BUFFER);
    }
    /**
     * @see README#Message classes
     */
    static register() {
        protobuf_1.registerMessage("GetSingleBlock", GetSingleBlock);
    }
}
exports.GetSingleBlock = GetSingleBlock;
class GetSingleBlockByIndex extends light_1.Message {
    constructor(props) {
        super(props);
        this.genesis = Buffer.from(this.genesis || protobuf_1.EMPTY_BUFFER);
    }
    /**
     * @see README#Message classes
     */
    static register() {
        protobuf_1.registerMessage("GetSingleBlockByIndex", GetSingleBlockByIndex);
    }
}
exports.GetSingleBlockByIndex = GetSingleBlockByIndex;
class GetSingleBlockByIndexReply extends light_1.Message {
    constructor(props) {
        super(props);
        this.links = this.links || [];
    }
    /**
     * @see README#Message classes
     */
    static register() {
        protobuf_1.registerMessage("GetSingleBlockByIndexReply", GetSingleBlockByIndexReply);
    }
}
exports.GetSingleBlockByIndexReply = GetSingleBlockByIndexReply;
class GetUpdateChain extends light_1.Message {
    constructor(props) {
        super(props);
        this.latestID = Buffer.from(this.latestID || protobuf_1.EMPTY_BUFFER);
    }
    /**
     * @see README#Message classes
     */
    static register() {
        protobuf_1.registerMessage("GetUpdateChain", GetUpdateChain);
    }
}
exports.GetUpdateChain = GetUpdateChain;
class GetUpdateChainReply extends light_1.Message {
    constructor(props) {
        super(props);
        this.update = this.update || [];
    }
    /**
     * @see README#Message classes
     */
    static register() {
        protobuf_1.registerMessage("GetUpdateChainReply", GetUpdateChainReply, skipblock_1.SkipBlock);
    }
}
exports.GetUpdateChainReply = GetUpdateChainReply;
GetAllSkipChainIDs.register();
GetAllSkipChainIDsReply.register();
StoreSkipBlock.register();
StoreSkipBlockReply.register();
GetSingleBlock.register();
GetSingleBlockByIndex.register();
GetSingleBlockByIndexReply.register();
GetUpdateChain.register();
GetUpdateChainReply.register();
