"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.init = init;
exports.reset = reset;
exports.getTxs = getTxs;
exports.dropInvalidTxs = dropInvalidTxs;
exports.updateRecord = updateRecord;
exports.parseRecord = parseRecord;
exports.queueRequest = queueRequest;
exports.sendRequests = sendRequests;
const Context_1 = require("./Context");
/** STATE */
let p2pLogger;
/** ROUTES */
/*
const gossipRoute: P2P.P2PTypes.GossipHandler = (payload) => {}

const routes = {
  internal: {},
  gossip: {
    gossip: gossipRoute,
  },
}
*/
/** FUNCTIONS */
/** CycleCreator Functions */
/* These functions must be defined by all modules that implement a
     network action like going active, lost node detection, etc.
     These functions are called by CycleCreator
*/
function init() {
    // Init logger
    p2pLogger = Context_1.logger.getLogger('p2p');
    // Init state
    reset();
    // Register routes
    /*
    for (const [name, handler] of Object.entries(routes.internal)) {
      Comms.registerInternal(name, handler)
    }
    for (const [name, handler] of Object.entries(routes.gossip)) {
      Comms.registerGossipHandler(name, handler)
    }
    */
}
function reset() { }
function getTxs() {
    return;
}
function dropInvalidTxs(txs) {
    return;
}
/*
Given the txs and prev cycle record mutate the referenced record
*/
function updateRecord(txs, record, prev) { }
function parseRecord(record) {
    return;
}
function queueRequest(request) { }
function sendRequests() { }
/** Module Functions */
function info(...msg) {
    const entry = `[CHANGE ME]: ${msg.join(' ')}`;
    p2pLogger.info(entry);
}
function warn(...msg) {
    const entry = `[CHANGE ME]: ${msg.join(' ')}`;
    p2pLogger.warn(entry);
}
function error(...msg) {
    const entry = `[CHANGE ME]: ${msg.join(' ')}`;
    p2pLogger.error(entry);
}
//# sourceMappingURL=Template.js.map