Tokens
Get a token object through the
getToken(tokenSymbol)
function on the tokenService.The list of tokens that can be passed into
getToken()
are: SAI, MKR, WETH, PETH, ETH.This list can also be obtained with
tokenService.getTokens()
. This function returns a string representation of the token symbol, e.g. 'SAI', which can also be passed into getToken
.When the Multi-Collateral Dai plugin is in use,
getToken('DAI')
will return a token object for Dai.const tokenService = maker.service('token');
const sai = tokenService.getToken('SAI');
const weth = tokenService.getToken('WETH');
const peth = tokenService.getToken('PETH');
Most of the methods below can be called on any token object.
deposit
and withdraw
are for WETH only, and join
and exit
are for PETH only.const allowance = await dai.allowance('0x...owner', '0x...spender');
- Params:
tokenOwner
- address of token ownerspender
- address of token spender- Returns: promise (resolves to token allowance)
const balance = await dai.balance();
- Params: none
- Returns: promise (resolves balance of current account)
const balanceOf = await dai.balanceOf('0x...f00');
- Params: address to check
- Returns: promise (resolves balance of address)
const totalSupply = await dai.totalSupply();
- Params: none
- Returns: promise (resolves total supply of token)
return await dai.approve('0x...f00', DAI(10));
- Params:
- spender - address of token spender
- amount - amount of token to allow
approve
approves the spending address to spend up to amount
of msg.sender
's tokens.return await dai.approveUnlimited('0x...f00');
- Params: address of token spender
approveUnlimited
approves the spending address to spend the maximum amount of msg.sender
's tokens.return await dai.transfer('0x...f00', DAI(10));
- Params:
- to - address to send to
- amount - amount of token to send
transfer
transfers amount
of token to to
address.return await dai.transferFrom('0x...fr0m', '0x...t0', DAI(10));
- Params:
- from - address to send tokens from
- to - address to send to
- amount - amount of token to send
transferFrom()
transfers amount
of token from from
address to to
address. Transaction will fail if msg.sender
does not have allowance to transfer the amount of tokens from
the from address.return await weth.deposit(ETH(10));
- Params: amount of Eth to deposit
deposit
converts amount
of Eth to amount
of Weth.return await weth.withdraw(WETH(10));
- Params: amount of Weth to withdraw
withdraw
converts amount
of Weth to amount
of Eth.return await peth.join(WETH(10));
- Params: amount of Weth to join
return await peth.exit(PETH(10));
- Params: amount of Peth to exit
Last modified 3yr ago