"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.MAX_L1_TOKENS_PER_POOL_REBALANCE_LEAF = exports.MAX_REFUNDS_PER_RELAYER_REFUND_LEAF = exports.l1TokenTransferThreshold = exports.maxL1TokensPerPoolRebalanceLeaf = exports.maxRefundsPerRelayerRefundLeaf = exports.sampleL2GasPrice = exports.sampleL2MaxSubmissionCost = exports.sampleL2GasSendTokens = exports.sampleL2Gas = exports.amountToReturn = exports.amountHeldByPool = exports.mockTreeRoot = exports.mockSlowRelayRoot = exports.mockRelayerRefundRoot = exports.mockPoolRebalanceRoot = exports.mockPoolRebalanceLeafCount = exports.mockBundleEvaluationBlockNumbers = exports.zeroRawValue = exports.identifier = exports.zeroBytes32 = exports.zeroAddress = exports.refundProposalLiveness = exports.totalBond = exports.finalFeeUsdt = exports.finalFeeUsdc = exports.finalFee = exports.bondAmount = exports.firstDepositId = exports.amountToRelayPreLPFee = exports.amountToRelayPreModifiedFees = exports.amountReceived = exports.amountToRelayPreFees = exports.totalPostModifiedFeesPct = exports.totalPostFeesPct = exports.oneHundredPct = exports.realizedLpFeePct = exports.incorrectModifiedRelayerFeePct = exports.modifiedRelayerFeePct = exports.depositRelayerFeePct = exports.amountToRelay = exports.amountToDeposit = exports.amountToLp = exports.amountToSeedWallets = exports.MAX_EXCLUSIVITY_OFFSET_SECONDS = exports.MAX_UINT32 = exports.maxUint256 = exports.repaymentChainId = exports.originChainId = exports.destinationChainId = exports.TokenRolesEnum = void 0;
exports.CHAIN_ID_TEST_LIST = exports.randomDestinationToken2 = exports.randomDestinationToken = exports.randomOriginToken = exports.randomL1Token = exports.CONFIG_STORE_VERSION = exports.sampleRateModel = void 0;
exports.randomAddress = randomAddress;
const ethers_1 = require("ethers");
const utils_1 = require("../src/utils");
const constants_1 = require("../src/constants");
const mocks_1 = require("./mocks");
exports.TokenRolesEnum = {
    OWNER: "0",
    MINTER: "1",
    BURNER: "3",
};
exports.destinationChainId = 1342;
exports.originChainId = 666;
exports.repaymentChainId = 777;
exports.maxUint256 = ethers_1.ethers.constants.MaxInt256;
exports.MAX_UINT32 = ethers_1.BigNumber.from("0xFFFFFFFF");
exports.MAX_EXCLUSIVITY_OFFSET_SECONDS = 24 * 60 * 60 * 365;
exports.amountToSeedWallets = (0, utils_1.toWei)("1500");
exports.amountToLp = (0, utils_1.toWei)("1000");
exports.amountToDeposit = (0, utils_1.toWei)("100");
exports.amountToRelay = (0, utils_1.toWei)("25");
exports.depositRelayerFeePct = (0, utils_1.toWei)("0.1");
exports.modifiedRelayerFeePct = (0, utils_1.toBN)(exports.depositRelayerFeePct).add((0, utils_1.toBN)((0, utils_1.toWei)("0.1")));
exports.incorrectModifiedRelayerFeePct = (0, utils_1.toBN)(exports.modifiedRelayerFeePct).add((0, utils_1.toBN)((0, utils_1.toWei)("0.01")));
exports.realizedLpFeePct = (0, utils_1.toWei)("0.1");
exports.oneHundredPct = (0, utils_1.toWei)("1");
exports.totalPostFeesPct = (0, utils_1.toBN)(exports.oneHundredPct).sub((0, utils_1.toBN)(exports.depositRelayerFeePct).add(exports.realizedLpFeePct));
exports.totalPostModifiedFeesPct = (0, utils_1.toBN)(exports.oneHundredPct).sub((0, utils_1.toBN)(exports.modifiedRelayerFeePct).add(exports.realizedLpFeePct));
exports.amountToRelayPreFees = (0, utils_1.toBN)(exports.amountToRelay).mul((0, utils_1.toBN)(exports.oneHundredPct)).div(exports.totalPostFeesPct);
exports.amountReceived = (0, utils_1.toBN)(exports.amountToDeposit).mul((0, utils_1.toBN)(exports.totalPostFeesPct)).div((0, utils_1.toBN)(exports.oneHundredPct));
exports.amountToRelayPreModifiedFees = (0, utils_1.toBN)(exports.amountToRelay).mul((0, utils_1.toBN)(exports.oneHundredPct)).div(exports.totalPostModifiedFeesPct);
exports.amountToRelayPreLPFee = exports.amountToRelayPreFees.mul(exports.oneHundredPct.sub(exports.realizedLpFeePct)).div(exports.oneHundredPct);
exports.firstDepositId = (0, utils_1.toBN)(0);
exports.bondAmount = (0, utils_1.toWei)("5");
exports.finalFee = (0, utils_1.toWei)("1");
exports.finalFeeUsdc = ethers_1.ethers.utils.parseUnits("1", 6);
exports.finalFeeUsdt = ethers_1.ethers.utils.parseUnits("1", 6);
exports.totalBond = exports.bondAmount.add(exports.finalFee);
exports.refundProposalLiveness = 7200;
exports.zeroAddress = constants_1.ZERO_ADDRESS;
exports.zeroBytes32 = "0x0000000000000000000000000000000000000000000000000000000000000000";
exports.identifier = (0, utils_1.utf8ToHex)("ACROSS-V2");
exports.zeroRawValue = { rawValue: "0" };
exports.mockBundleEvaluationBlockNumbers = [1, 2, 3];
exports.mockPoolRebalanceLeafCount = 5;
exports.mockPoolRebalanceRoot = ethers_1.ethers.utils.hexlify(ethers_1.ethers.utils.randomBytes(32));
exports.mockRelayerRefundRoot = ethers_1.ethers.utils.hexlify(ethers_1.ethers.utils.randomBytes(32));
exports.mockSlowRelayRoot = ethers_1.ethers.utils.hexlify(ethers_1.ethers.utils.randomBytes(32));
exports.mockTreeRoot = ethers_1.ethers.utils.hexlify(ethers_1.ethers.utils.randomBytes(32));
exports.amountHeldByPool = exports.amountToRelay.mul(4);
exports.amountToReturn = (0, utils_1.toWei)("1");
exports.sampleL2Gas = 2000000;
exports.sampleL2GasSendTokens = 300000;
exports.sampleL2MaxSubmissionCost = (0, utils_1.toWei)("0.01");
exports.sampleL2GasPrice = 5e9;
exports.maxRefundsPerRelayerRefundLeaf = 3;
exports.maxL1TokensPerPoolRebalanceLeaf = 3;
exports.l1TokenTransferThreshold = (0, utils_1.toWei)(100);
exports.MAX_REFUNDS_PER_RELAYER_REFUND_LEAF = 3;
exports.MAX_L1_TOKENS_PER_POOL_REBALANCE_LEAF = 3;
exports.sampleRateModel = {
    UBar: (0, utils_1.toWei)(0.8).toString(),
    R0: (0, utils_1.toWei)(0.04).toString(),
    R1: (0, utils_1.toWei)(0.07).toString(),
    R2: (0, utils_1.toWei)(0.75).toString(),
};
exports.CONFIG_STORE_VERSION = mocks_1.DEFAULT_CONFIG_STORE_VERSION;
function randomAddress() {
    return ethers_1.ethers.utils.getAddress(ethers_1.ethers.utils.hexlify(ethers_1.ethers.utils.randomBytes(20)));
}
exports.randomL1Token = randomAddress();
exports.randomOriginToken = randomAddress();
exports.randomDestinationToken = randomAddress();
exports.randomDestinationToken2 = randomAddress();
exports.CHAIN_ID_TEST_LIST = [exports.originChainId, exports.destinationChainId, exports.repaymentChainId, 1];
//# sourceMappingURL=constants.js.map