@andrekorol/kollateral
Version:
Typescript library for Kollateral, the flash loan building block
69 lines • 2.62 kB
JavaScript
;
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