UNPKG

@andrekorol/kollateral

Version:

Typescript library for Kollateral, the flash loan building block

69 lines 2.62 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.TokenUtils = exports.Token = void 0; var network_1 = require("./network"); var Token; (function (Token) { Token[Token["ETH"] = 0] = "ETH"; Token[Token["USDC"] = 1] = "USDC"; Token[Token["DAI"] = 2] = "DAI"; })(Token = exports.Token || (exports.Token = {})); var ETHER_TOKEN_ADDRESS = "0x0000000000000000000000000000000000000001"; var tokenToAddressMap = new Map([ [network_1.Network.Mainnet, new Map([ [Token.ETH, ETHER_TOKEN_ADDRESS], [Token.USDC, "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48"], [Token.DAI, "0x6b175474e89094c44da98b954eedeac495271d0f"] ])], [network_1.Network.Ropsten, new Map([ [Token.ETH, ETHER_TOKEN_ADDRESS], [Token.USDC, "0x5e8B3C9eE77C6951D4D91eF7510aAc60C5313638"], [Token.DAI, "0xD8FAE8336297A17180445F93b43B17b5b554c6dD"] ])], [network_1.Network.Rinkeby, new Map([ [Token.ETH, ETHER_TOKEN_ADDRESS], [Token.USDC, "0x902cB36aa5F9B33E7d04E0D3F75ABC027c8E2DA7"], [Token.DAI, "0x21AD750D8Eac5Fc7278cf93De9Aa4e68eF261BF7"] ])] ]); var addressToTokenMap = new Map(Array.from(tokenToAddressMap.entries()) .map(function (kv) { return [kv[0], new Map(Array.from(kv[1].entries()) .map(function (kv) { return [kv[1], kv[0]]; })) ]; })); var TokenUtils = /** @class */ (function () { function TokenUtils() { } TokenUtils.getAddress = function (network, token) { if (!tokenToAddressMap.has(network)) { return null; } if (!tokenToAddressMap.get(network).has(token)) { return null; } return tokenToAddressMap.get(network).get(token); }; TokenUtils.fromAddress = function (network, tokenAddress) { if (!addressToTokenMap.has(network)) { return null; } if (!addressToTokenMap.get(network).has(tokenAddress)) { return null; } return addressToTokenMap.get(network).get(tokenAddress); }; TokenUtils.getSupportedTokens = function (network) { if (!addressToTokenMap.has(network)) { return []; } return Array.from(tokenToAddressMap.get(network).keys()); }; TokenUtils.isSupportedToken = function (network, token) { if (!tokenToAddressMap.has(network)) { return false; } return tokenToAddressMap.get(network).has(token); }; return TokenUtils; }()); exports.TokenUtils = TokenUtils; //# sourceMappingURL=tokens.js.map