"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
const __1 = require("..");
const EVMVerificationPeer_1 = require("../../providers/chain-state/evm/p2p/EVMVerificationPeer");
const p2p_1 = require("../../providers/chain-state/evm/p2p/p2p");
const csp_1 = require("./api/csp");
const matic_routes_1 = require("./api/matic-routes");
class MATICModule extends __1.BaseModule {
    constructor(services, chain, network, _config) {
        super(services);
        services.P2P.register(chain, network, p2p_1.EVMP2pWorker);
        services.CSP.registerService(chain, network, new csp_1.MATICStateProvider());
        services.Api.app.use(matic_routes_1.MaticRoutes);
        services.Verification.register(chain, network, EVMVerificationPeer_1.EVMVerificationPeer);
    }
}
exports.default = MATICModule;
//# sourceMappingURL=index.js.map