Fraction
constructor(numerator: BigintIsh, denominator: BigintIsh = ONE)
The base class which all subsequent fraction classes extend. Not meant to be used directly.
Propertiesβ
numeratorβ
numerator: JSBI
denominatorβ
denominator: JSBI
quotientβ
quotient: JSBI
Performs floor division.
Methodsβ
invertβ
invert(): Fraction
addβ
add(other: Fraction | BigintIsh): Fraction
subtractβ
subtract(other: Fraction | BigintIsh): Fraction
multiplyβ
multiply(other: Fraction | BigintIsh): Fraction
divideβ
divide(other: Fraction | BigintIsh): Fraction
toSignificantβ
toSignificant(
significantDigits: number,
format: object = { groupSeparator: '' },
rounding: Rounding = Rounding.ROUND_HALF_UP
): string
Formats a fraction to the specified number of significant digits.
- For format options, see toFormat.
toFixedβ
toFixed(
decimalPlaces: number,
format: object = { groupSeparator: '' },
rounding: Rounding = Rounding.ROUND_HALF_UP
): string
Formats a fraction to the specified number of decimal places.
- For format options, see toFormat.
Percent
Responsible for formatting percentages (10% instead of 0.1).
Exampleβ
import { Percent } from '@uniswap/sdk'
const percent = new Percent('60', '100')
console.log(percent.toSignificant(2)) // 60
toSignificantβ
See toSignificant.
toFixedβ
See toFixed.
TokenAmount
constructor(token: Token, amount: BigintIsh)
Responsible for formatting token amounts with specific decimal places.
Exampleβ
import { Token, TokenAmount } from '@uniswap/sdk'
const FRIED = new Token(ChainId.MAINNET, '0xfa1aFe1000000000000000000000000000000000', 18, 'FRIED', 'Beans')
const tokenAmount = new TokenAmount(FRIED, '3000000000000000000')
console.log(tokenAmount.toExact()) // 3
Propertiesβ
tokenβ
token: Token
rawβ
raw: JSBI
Returns the full token amount, unadjusted for decimals.
Methodsβ
addβ
add(other: TokenAmount): TokenAmount
subtractβ
subtract(other: TokenAmount): TokenAmount
toSignificantβ
See toSignificant.
toFixedβ
See toFixed.
toExactβ
toExact(format: object = { groupSeparator: '' }): string
Price
constructor(baseToken: Token, quoteToken: Token, denominator: BigintIsh, numerator: BigintIsh)
Responsible for denominating the relative price between two tokens. Denominator and numerator must be unadjusted for decimals.
Exampleβ
import { ChainId, WETH as WETHs, Token, Price } from '@uniswap/sdk'
const WETH = WETHs[ChainId.MAINNET]
const ABC = new Token(ChainId.MAINNET, '0xabc0000000000000000000000000000000000000', 18, 'ABC')
const price = new Price(WETH, ABC, '1000000000000000000', '123000000000000000000')
console.log(price.toSignificant(3)) // 123
This example shows theΒ ETH/XYZ price, where ETH is the base token, and XYZ is the quote token. The price is constructed from an amount of XYZ (the numerator) / an amount of WETH (the denominator).
Static Methodsβ
fromRouteβ
fromRoute(route: Route): Price
Propertiesβ
baseTokenβ
baseToken: Token
quoteTokenβ
quoteToken: Token
scalarβ
scalar: Fraction
Used to adjust the price for the decimals of the base and quote tokens.
rawβ
raw: Fraction
Returns the raw price, unadjusted for decimals.
adjustedβ
adjusted: Fraction
Returns the price, adjusted for decimals.
Methodsβ
invertβ
invert(): Price
multiplyβ
multiply(other: Price): Price
quoteβ
quote(tokenAmount: TokenAmount): TokenAmount
Given an asset amount, returns an equivalent value of the other asset, according to the current price.
toSignificantβ
See toSignificant.
toFixedβ
See toFixed.